From fc557169af80197c95c1a5b2629188967f11cd8a Mon Sep 17 00:00:00 2001 From: Michael Richardson Date: Fri, 14 May 2021 15:24:08 -0700 Subject: [PATCH 01/13] add test:compat to CI tests --- .github/workflows/tests.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 17e5df4a3d..0bb3495bc6 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -71,3 +71,7 @@ jobs: - name: yarn test:schemas if: matrix.node-version == '10.x' run: yarn test:schemas + + - name: yarn test:compat + if: matrix.node-version == '10.x' + run: yarn test:compat From 8d07c65de81817794330bdb20f096e1143263d7c Mon Sep 17 00:00:00 2001 From: Michael Richardson Date: Fri, 14 May 2021 15:58:10 -0700 Subject: [PATCH 02/13] update api-extractor --- package.json | 2 +- yarn.lock | 94 ++++++++++++++++++++++++++++++---------------------- 2 files changed, 56 insertions(+), 40 deletions(-) diff --git a/package.json b/package.json index 91a7136aa2..2d89f3cb39 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ }, "devDependencies": { "@azure/ms-rest-js": "1.9.0", - "@microsoft/api-extractor": "^7.11.2", + "@microsoft/api-extractor": "^7.15.1", "@standardlabs/downlevel-dts": "^0.7.5", "@standardlabs/is-private": "^1.0.1", "@types/jsonwebtoken": "7.2.8", diff --git a/yarn.lock b/yarn.lock index 8eda8ede53..97b5ff5145 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1154,30 +1154,32 @@ dependencies: dotnet-2.0.0 "^1.4.4" -"@microsoft/api-extractor-model@7.10.8": - version "7.10.8" - resolved "https://registry.yarnpkg.com/@microsoft/api-extractor-model/-/api-extractor-model-7.10.8.tgz#12fa3c25f26b5eb1f4799270bf0df12d4113f16e" - integrity sha512-9TfiCTPnkUeLaYywZeg9rYbVPX9Tj6AAkO6ThnjSE0tTPLjMcL3RiHkqn0BJ4+aGcl56APwo32zj5+kG+NqxYA== - dependencies: - "@microsoft/tsdoc" "0.12.19" - "@rushstack/node-core-library" "3.34.7" - -"@microsoft/api-extractor@^7.11.2": - version "7.11.2" - resolved "https://registry.yarnpkg.com/@microsoft/api-extractor/-/api-extractor-7.11.2.tgz#7f90e39294d16a18bb00883e9462242dc1646efe" - integrity sha512-iZPv22j9K02cbwIDblOgF1MxZG+KWovp3CQpWCD6UC/+YYO4DfLxX5uZYVNzfgT4vU8fN0rugJmGm85rHX6Ouw== - dependencies: - "@microsoft/api-extractor-model" "7.10.8" - "@microsoft/tsdoc" "0.12.19" - "@rushstack/node-core-library" "3.34.7" - "@rushstack/rig-package" "0.2.7" - "@rushstack/ts-command-line" "4.7.6" +"@microsoft/api-extractor-model@7.13.1": + version "7.13.1" + resolved "https://registry.yarnpkg.com/@microsoft/api-extractor-model/-/api-extractor-model-7.13.1.tgz#6dd9c4bd49b5d0d32b44c564a94c34b3c3aa2a87" + integrity sha512-PKAjDmAJ6X07tvqCHSN1PRaKq8bZQXF9QI6WGEMnCHNFWwXUoITOAcvFW0Ol3TzwHO5rLbuy/CqWebfhv8eOtw== + dependencies: + "@microsoft/tsdoc" "0.13.2" + "@microsoft/tsdoc-config" "~0.15.2" + "@rushstack/node-core-library" "3.37.0" + +"@microsoft/api-extractor@^7.15.1": + version "7.15.1" + resolved "https://registry.yarnpkg.com/@microsoft/api-extractor/-/api-extractor-7.15.1.tgz#c3791933367ddded72a2f1d3c437e17fa050eac5" + integrity sha512-PYbGAvxbM5B6HbafXY7tJ4ObYpeUZrZFt9vlN68tpYG/7aeldMLAZSjTyB30VFXaGlArjeEooKZIcs2ZnVAbNg== + dependencies: + "@microsoft/api-extractor-model" "7.13.1" + "@microsoft/tsdoc" "0.13.2" + "@microsoft/tsdoc-config" "~0.15.2" + "@rushstack/node-core-library" "3.37.0" + "@rushstack/rig-package" "0.2.12" + "@rushstack/ts-command-line" "4.7.10" colors "~1.2.1" lodash "~4.17.15" resolve "~1.17.0" semver "~7.3.0" source-map "~0.6.1" - typescript "~4.0.5" + typescript "~4.2.4" "@microsoft/recognizers-text-choice@1.1.4", "@microsoft/recognizers-text-choice@~1.1.4": version "1.1.4" @@ -1255,10 +1257,20 @@ resolved "https://registry.yarnpkg.com/@microsoft/recognizers-text/-/recognizers-text-1.1.4.tgz#264530f748b2cad3fac54d53538f88ad2bf99b7e" integrity sha512-hlSVXcaX5i8JcjuUJpVxmy2Z/GxvFXarF0KVySCFop57wNEnrLWMHe4I4DjP866G19VyIKRw+vPA32pkGhZgTg== -"@microsoft/tsdoc@0.12.19": - version "0.12.19" - resolved "https://registry.yarnpkg.com/@microsoft/tsdoc/-/tsdoc-0.12.19.tgz#2173ccb92469aaf62031fa9499d21b16d07f9b57" - integrity sha512-IpgPxHrNxZiMNUSXqR1l/gePKPkfAmIKoDRP9hp7OwjU29ZR8WCJsOJ8iBKgw0Qk+pFwR+8Y1cy8ImLY6e9m4A== +"@microsoft/tsdoc-config@~0.15.2": + version "0.15.2" + resolved "https://registry.yarnpkg.com/@microsoft/tsdoc-config/-/tsdoc-config-0.15.2.tgz#eb353c93f3b62ab74bdc9ab6f4a82bcf80140f14" + integrity sha512-mK19b2wJHSdNf8znXSMYVShAHktVr/ib0Ck2FA3lsVBSEhSI/TfXT7DJQkAYgcztTuwazGcg58ZjYdk0hTCVrA== + dependencies: + "@microsoft/tsdoc" "0.13.2" + ajv "~6.12.6" + jju "~1.4.0" + resolve "~1.19.0" + +"@microsoft/tsdoc@0.13.2": + version "0.13.2" + resolved "https://registry.yarnpkg.com/@microsoft/tsdoc/-/tsdoc-0.13.2.tgz#3b0efb6d3903bd49edb073696f60e90df08efb26" + integrity sha512-WrHvO8PDL8wd8T2+zBGKrMwVL5IyzR3ryWUsl0PXgEV0QHup4mTLi0QcATefGI6Gx9Anu7vthPyyyLpY0EpiQg== "@netflix/nerror@^1.0.0": version "1.1.3" @@ -1326,10 +1338,10 @@ resolved "https://registry.yarnpkg.com/@opentelemetry/context-base/-/context-base-0.6.1.tgz#b260e454ee4f9635ea024fc83be225e397f15363" integrity sha512-5bHhlTBBq82ti3qPT15TRxkYTFPPQWbnkkQkmHPtqiS1XcTB69cEKd3Jm7Cfi/vkPoyxapmePE9tyA7EzLt8SQ== -"@rushstack/node-core-library@3.34.7": - version "3.34.7" - resolved "https://registry.yarnpkg.com/@rushstack/node-core-library/-/node-core-library-3.34.7.tgz#864c773212ec0fc158576fec0b5ae0535a246886" - integrity sha512-7FwJ0jmZsh7bDIZ1IqDNphY9Kc6aAi1D2K8jiq+da4flMyL84HNeq2KxvwFLzjLwu3eMr88X+oBpgxCTD5Y57Q== +"@rushstack/node-core-library@3.37.0": + version "3.37.0" + resolved "https://registry.yarnpkg.com/@rushstack/node-core-library/-/node-core-library-3.37.0.tgz#6e8ebfdbe2829d380bc827bbb450361fb48e142c" + integrity sha512-b0OGvl20zfepytLBnKsOtemtiadNZAVolXxaSYssV9VjXaLPF97oLvtLfwc58BX05ufIsrKZgXatnRo8YeffNg== dependencies: "@types/node" "10.17.13" colors "~1.2.1" @@ -1341,19 +1353,18 @@ timsort "~0.3.0" z-schema "~3.18.3" -"@rushstack/rig-package@0.2.7": - version "0.2.7" - resolved "https://registry.yarnpkg.com/@rushstack/rig-package/-/rig-package-0.2.7.tgz#42b1ed2cfd73d4fc50a119e74a236aacb70d2125" - integrity sha512-hI1L0IIzCHqH/uW64mKqEQ0/MANA/IklVId3jGpj1kt9RJcBdeNUIlzDtHl437LZRAuEA8CyotRHzG6YDgWlTw== +"@rushstack/rig-package@0.2.12": + version "0.2.12" + resolved "https://registry.yarnpkg.com/@rushstack/rig-package/-/rig-package-0.2.12.tgz#c434d62b28e0418a040938226f8913971d0424c7" + integrity sha512-nbePcvF8hQwv0ql9aeQxcaMPK/h1OLAC00W7fWCRWIvD2MchZOE8jumIIr66HGrfG2X1sw++m/ZYI4D+BM5ovQ== dependencies: - "@types/node" "10.17.13" resolve "~1.17.0" strip-json-comments "~3.1.1" -"@rushstack/ts-command-line@4.7.6": - version "4.7.6" - resolved "https://registry.yarnpkg.com/@rushstack/ts-command-line/-/ts-command-line-4.7.6.tgz#ce509855b507863ed5e2a9ced8451774b6bfd359" - integrity sha512-falJVNfpJtsL3gJaY77JXXycfzhzB9VkKhqEfjRWD69/f6ezMUorPR6Nc90MnIaWgePTcdTJPZibxOQrNpu1Uw== +"@rushstack/ts-command-line@4.7.10": + version "4.7.10" + resolved "https://registry.yarnpkg.com/@rushstack/ts-command-line/-/ts-command-line-4.7.10.tgz#a2ec6efb1945b79b496671ce90eb1be4f1397d31" + integrity sha512-8t042g8eerypNOEcdpxwRA3uCmz0duMo21rG4Z2mdz7JxJeylDmzjlU3wDdef2t3P1Z61JCdZB6fbm1Mh0zi7w== dependencies: "@types/argparse" "1.0.38" argparse "~1.0.9" @@ -2184,7 +2195,7 @@ ajv-keywords@^3.1.0, ajv-keywords@^3.4.1, ajv-keywords@^3.5.2: resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ== -ajv@^6.1.0, ajv@^6.10.0, ajv@^6.10.2, ajv@^6.12.3, ajv@^6.12.4, ajv@^6.12.5: +ajv@^6.1.0, ajv@^6.10.0, ajv@^6.10.2, ajv@^6.12.3, ajv@^6.12.4, ajv@^6.12.5, ajv@~6.12.6: version "6.12.6" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== @@ -10718,7 +10729,7 @@ resolve@^1.1.4, resolve@^1.1.6, resolve@^1.1.7, resolve@^1.10.0, resolve@^1.17.0 is-core-module "^2.0.0" path-parse "^1.0.6" -resolve@^1.13.1: +resolve@^1.13.1, resolve@~1.19.0: version "1.19.0" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.19.0.tgz#1af5bf630409734a067cae29318aac7fa29a267c" integrity sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg== @@ -12465,7 +12476,7 @@ typescript@3.5.3: resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.5.3.tgz#c830f657f93f1ea846819e929092f5fe5983e977" integrity sha512-ACzBtm/PhXBDId6a6sDJfroT2pOWt/oOnk4/dElG5G33ZL776N3Y6/6bKZJBFpd+b05F3Ct9qDjMeJmRWtE2/g== -typescript@^4.0.5, typescript@~4.0.5: +typescript@^4.0.5: version "4.0.5" resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.0.5.tgz#ae9dddfd1069f1cb5beb3ef3b2170dd7c1332389" integrity sha512-ywmr/VrTVCmNTJ6iV2LwIrfG1P+lv6luD8sUJs+2eI9NLGigaN+nUQc13iHqisq7bra9lnmUSYqbJvegraBOPQ== @@ -12475,6 +12486,11 @@ typescript@^4.1.0-dev.20201026: resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.1.0-dev.20201102.tgz#e1978890ac063bb3f13d067067905b312c1e0897" integrity sha512-kyL2MUGRx69NgowtHpnabYzNA3N8CR+XW51kL9my6MfSXyrojytW5P4YmaayHGQhWLRmzzdDvHfkf2PQBHgbUw== +typescript@~4.2.4: + version "4.2.4" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.2.4.tgz#8610b59747de028fda898a8aef0e103f156d0961" + integrity sha512-V+evlYHZnQkaz8TRBuxTA92yZBPotr5H+WhQ7bD3hZUndx5tGOa1fuCgeSjxAzM1RiN5IzvadIXTVefuuwZCRg== + uglify-js@^3.1.4: version "3.11.4" resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.11.4.tgz#b47b7ae99d4bd1dca65b53aaa69caa0909e6fadf" From 73ddb18e3651155ea1e95ce3fbc4d2e55efd6ebb Mon Sep 17 00:00:00 2001 From: Michael Richardson Date: Fri, 14 May 2021 16:12:17 -0700 Subject: [PATCH 03/13] fix compat errors --- .../etc/botbuilder-core.api.md | 247 +++++----- libraries/botbuilder-core/src/botAdapter.ts | 11 - libraries/botbuilder-core/src/testAdapter.ts | 3 - libraries/botbuilder-core/src/turnContext.ts | 12 - .../etc/botframework-config.api.md | 58 +-- .../etc/botframework-schema.api.md | 421 +++++++++++++++--- libraries/botframework-schema/src/index.ts | 4 +- .../etc/botframework-streaming.api.md | 119 ++--- 8 files changed, 586 insertions(+), 289 deletions(-) diff --git a/libraries/botbuilder-core/etc/botbuilder-core.api.md b/libraries/botbuilder-core/etc/botbuilder-core.api.md index bd6c24f96c..9e803efe94 100644 --- a/libraries/botbuilder-core/etc/botbuilder-core.api.md +++ b/libraries/botbuilder-core/etc/botbuilder-core.api.md @@ -5,23 +5,30 @@ ```ts import { Activity } from 'botframework-schema'; +import { AdaptiveCardInvokeResponse } from 'botframework-schema'; +import { AdaptiveCardInvokeValue } from 'botframework-schema'; import { AnimationCard } from 'botframework-schema'; +import { Assertion } from 'botbuilder-stdlib'; import { Attachment } from 'botframework-schema'; import { AudioCard } from 'botframework-schema'; +import { BotFrameworkClient } from 'botframework-connector'; import { CardAction } from 'botframework-schema'; import { CardImage } from 'botframework-schema'; import { ChannelAccount } from 'botframework-schema'; +import { Configuration } from 'botbuilder-dialogs-adaptive-runtime-core'; import { ConversationReference } from 'botframework-schema'; -import { HealthCheckResponse } from 'botframework-schema'; import { HeroCard } from 'botframework-schema'; import { InputHints } from 'botframework-schema'; +import { InvokeResponse } from 'botframework-schema'; import { MediaUrl } from 'botframework-schema'; import { Mention } from 'botframework-schema'; import { MessageReaction } from 'botframework-schema'; import { O365ConnectorCard } from 'botframework-schema'; import { ReceiptCard } from 'botframework-schema'; import { ResourceResponse } from 'botframework-schema'; +import { ServiceCollection } from 'botbuilder-dialogs-adaptive-runtime-core'; import { SignInUrlResponse } from 'botframework-schema'; +import { StatusCodes } from 'botframework-schema'; import { ThumbnailCard } from 'botframework-schema'; import { TokenExchangeRequest } from 'botframework-schema'; import { TokenExchangeResource } from 'botframework-schema'; @@ -30,17 +37,16 @@ import { VideoCard } from 'botframework-schema'; // @public export class ActivityFactory { - static checkLGResult(lgResult: any): string[]; static fromObject(lgResult: any): Partial; } // @public export class ActivityHandler extends ActivityHandlerBase { - // (undocumented) protected static createInvokeResponse(body?: any): InvokeResponse; protected defaultNextEvent(context: TurnContext): () => Promise; protected dispatchConversationUpdateActivity(context: TurnContext): Promise; protected dispatchEventActivity(context: TurnContext): Promise; + protected dispatchInstallationUpdateActivity(context: TurnContext): Promise; protected dispatchMessageReactionActivity(context: TurnContext): Promise; protected handle(context: TurnContext, type: string, onNext: () => Promise): Promise; // (undocumented) @@ -48,6 +54,11 @@ export class ActivityHandler extends ActivityHandlerBase { [type: string]: BotHandler[]; }; protected on(type: string, handler: BotHandler): this; + protected onAdaptiveCardInvoke(context: TurnContext, invokeValue: AdaptiveCardInvokeValue): Promise; + onCommand(handler: BotHandler): this; + protected onCommandActivity(context: TurnContext): Promise; + onCommandResult(handler: BotHandler): this; + protected onCommandResultActivity(context: TurnContext): Promise; onConversationUpdate(handler: BotHandler): this; protected onConversationUpdateActivity(context: TurnContext): Promise; onDialog(handler: BotHandler): this; @@ -55,9 +66,12 @@ export class ActivityHandler extends ActivityHandlerBase { protected onEndOfConversationActivity(context: TurnContext): Promise; onEvent(handler: BotHandler): this; protected onEventActivity(context: TurnContext): Promise; - // (undocumented) - protected onHealthCheck(context: TurnContext): Promise; - // (undocumented) + onInstallationUpdate(handler: BotHandler): this; + protected onInstallationUpdateActivity(context: TurnContext): Promise; + onInstallationUpdateAdd(handler: BotHandler): this; + protected onInstallationUpdateAddActivity(context: TurnContext): Promise; + onInstallationUpdateRemove(handler: BotHandler): this; + protected onInstallationUpdateRemoveActivity(context: TurnContext): Promise; protected onInvokeActivity(context: TurnContext): Promise; onMembersAdded(handler: BotHandler): this; onMembersRemoved(handler: BotHandler): this; @@ -69,15 +83,12 @@ export class ActivityHandler extends ActivityHandlerBase { protected onReactionsAddedActivity(reactionsAdded: MessageReaction[], context: TurnContext): Promise; onReactionsRemoved(handler: BotHandler): this; protected onReactionsRemovedActivity(reactionsRemoved: MessageReaction[], context: TurnContext): Promise; - // (undocumented) protected onSignInInvoke(context: TurnContext): Promise; onTokenResponseEvent(handler: BotHandler): this; onTurn(handler: BotHandler): this; protected onTurnActivity(context: TurnContext): Promise; onTyping(handler: BotHandler): this; protected onTypingActivity(context: TurnContext): Promise; - onInstallationUpdate(handler: BotHandler): this; - protected onInstallationUpdateActivity(context: TurnContext): Promise; protected onUnrecognizedActivity(context: TurnContext): Promise; onUnrecognizedActivityType(handler: BotHandler): this; run(context: TurnContext): Promise; @@ -85,9 +96,14 @@ export class ActivityHandler extends ActivityHandlerBase { // @public export class ActivityHandlerBase { + protected onCommandActivity(context: TurnContext): Promise; + protected onCommandResultActivity(context: TurnContext): Promise; protected onConversationUpdateActivity(context: TurnContext): Promise; protected onEndOfConversationActivity(context: TurnContext): Promise; protected onEventActivity(context: TurnContext): Promise; + protected onInstallationUpdateActivity(context: TurnContext): Promise; + protected onInstallationUpdateAddActivity(context: TurnContext): Promise; + protected onInstallationUpdateRemoveActivity(context: TurnContext): Promise; protected onInvokeActivity(context: TurnContext): Promise; protected onMembersAddedActivity(membersAdded: ChannelAccount[], context: TurnContext): Promise; protected onMembersRemovedActivity(membersRemoved: ChannelAccount[], context: TurnContext): Promise; @@ -97,45 +113,53 @@ export class ActivityHandlerBase { protected onReactionsRemovedActivity(reactionsRemoved: MessageReaction[], context: TurnContext): Promise; protected onTurnActivity(context: TurnContext): Promise; protected onTypingActivity(context: TurnContext): Promise; - protected onInstallationUpdateActivity(context: TurnContext): Promise; protected onUnrecognizedActivity(context: TurnContext): Promise; run(context: TurnContext): Promise; } +// @public (undocumented) +export const assertBotComponent: Assertion; + +// @public (undocumented) +export const assertStoreItems: Assertion; + // @public export class AutoSaveStateMiddleware implements Middleware { constructor(...botStates: BotState[]); add(...botStates: BotState[]): this; botStateSet: BotStateSet; - // (undocumented) onTurn(context: TurnContext, next: () => Promise): Promise; } // @public export abstract class BotAdapter { // (undocumented) - readonly BotIdentityKey: Symbol; + readonly BotIdentityKey: symbol; abstract continueConversation(reference: Partial, logic: (revocableContext: TurnContext) => Promise): Promise; abstract deleteActivity(context: TurnContext, reference: Partial): Promise; // (undocumented) protected middleware: MiddlewareSet; // (undocumented) - readonly OAuthScopeKey: Symbol; - onTurnError: (context: TurnContext, error: Error) => Promise; + readonly OAuthScopeKey: symbol; + get onTurnError(): (context: TurnContext, error: Error) => Promise; + set onTurnError(value: (context: TurnContext, error: Error) => Promise); protected runMiddleware(context: TurnContext, next: (revocableContext: TurnContext) => Promise): Promise; abstract sendActivities(context: TurnContext, activities: Partial[]): Promise; - abstract updateActivity(context: TurnContext, activity: Partial): Promise; - use(...middleware: (MiddlewareHandler | Middleware)[]): this; + abstract updateActivity(context: TurnContext, activity: Partial): Promise; + use(...middlewares: (MiddlewareHandler | Middleware)[]): this; } // @public (undocumented) export const BotCallbackHandlerKey = "botCallbackHandler"; -// @public (undocumented) -export interface BotFrameworkClient { - postActivity: ((fromBotId: string, toBotId: string, toUrl: string, serviceUrl: string, conversationId: string, activity: Activity) => Promise>) | ((fromBotId: string, toBotId: string, toUrl: string, serviceUrl: string, conversationId: string, activity: Activity) => Promise); +// @public +export abstract class BotComponent { + // (undocumented) + abstract configureServices(services: ServiceCollection, configuration: Configuration): void; } +export { BotFrameworkClient } + // @public export interface BotFrameworkSkill { appId: string; @@ -170,15 +194,12 @@ export class BotState implements PropertyManager { // @public export class BotStatePropertyAccessor implements StatePropertyAccessor { constructor(state: BotState, name: string); - // (undocumented) delete(context: TurnContext): Promise; - // (undocumented) get(context: TurnContext): Promise; // (undocumented) get(context: TurnContext, defaultValue: T): Promise; // (undocumented) readonly name: string; - // (undocumented) set(context: TurnContext, value: T): Promise; // (undocumented) protected readonly state: BotState; @@ -207,6 +228,9 @@ export interface BotTelemetryClient { trackTrace(telemetry: TelemetryTrace): any; } +// @public +export const BotTelemetryClientKey = "BotTelemetryClient"; + // @public export class BrowserLocalStorage extends MemoryStorage { constructor(); @@ -236,7 +260,6 @@ export class CardFactory { static audioCard(title: string, media: (MediaUrl | string)[], buttons?: (CardAction | string)[], other?: Partial): Attachment; static contentTypes: any; static heroCard(title: string, images?: (CardImage | string)[], buttons?: (CardAction | string)[], other?: Partial): Attachment; - // (undocumented) static heroCard(title: string, text: string, images?: (CardImage | string)[], buttons?: (CardAction | string)[], other?: Partial): Attachment; static images(images: (CardImage | string)[] | undefined): CardImage[]; static media(links: (MediaUrl | string)[] | undefined): MediaUrl[]; @@ -245,11 +268,16 @@ export class CardFactory { static receiptCard(card: ReceiptCard): Attachment; static signinCard(title: string, url: string, text?: string): Attachment; static thumbnailCard(title: string, images?: (CardImage | string)[], buttons?: (CardAction | string)[], other?: Partial): Attachment; - // (undocumented) static thumbnailCard(title: string, text: string, images?: (CardImage | string)[], buttons?: (CardAction | string)[], other?: Partial): Attachment; static videoCard(title: string, media: (MediaUrl | string)[], buttons?: (CardAction | string)[], other?: Partial): Attachment; } +// @public +export class ComponentRegistration { + static add(componentRegistration: ComponentRegistration): void; + static get components(): ComponentRegistration[]; + } + // @public export class ConsoleTranscriptLogger implements TranscriptLogger { logActivity(activity: Activity): void | Promise; @@ -291,21 +319,31 @@ export const getTopScoringIntent: (result: RecognizerResult) => { score: number; }; -// @public (undocumented) -export const INVOKE_RESPONSE_KEY: symbol; - // @public -export interface InvokeResponse { - body?: T; - status: number; +export interface IntentScore { + [key: string]: unknown; + score?: number; } +// @public (undocumented) +export const INVOKE_RESPONSE_KEY: unique symbol; + +// @public (undocumented) +export class InvokeException extends Error { + constructor(status: StatusCodes, response?: T); + // (undocumented) + createInvokeResponse(): InvokeResponse; + } + +export { InvokeResponse } + // @public export interface IUserTokenProvider { getAadTokens(context: TurnContext, connectionName: string, resourceUrls: string[]): Promise<{ [propertyName: string]: TokenResponse; }>; getSignInLink(context: TurnContext, connectionName: string): Promise; + getTokenStatus(context: TurnContext, userId: string, includeFilter?: string, oAuthAppCredentials?: any): Promise; getUserToken(context: TurnContext, connectionName: string, magicCode?: string): Promise; signOutUser(context: TurnContext, connectionName: string, userId?: string): Promise; } @@ -315,7 +353,6 @@ export class MemoryStorage implements Storage_2 { constructor(memory?: { [k: string]: string; }); - // (undocumented) delete(keys: string[]): Promise; // (undocumented) protected etag: number; @@ -323,9 +360,7 @@ export class MemoryStorage implements Storage_2 { protected memory: { [k: string]: string; }; - // (undocumented) read(keys: string[]): Promise; - // (undocumented) write(changes: StoreItems): Promise; } @@ -357,35 +392,28 @@ export type MiddlewareHandler = (context: TurnContext, next: () => Promise // @public export class MiddlewareSet implements Middleware { - constructor(...middleware: (MiddlewareHandler | Middleware)[]); - // (undocumented) + constructor(...middlewares: (MiddlewareHandler | Middleware)[]); onTurn(context: TurnContext, next: () => Promise): Promise; run(context: TurnContext, next: () => Promise): Promise; - use(...middleware: (MiddlewareHandler | Middleware)[]): this; + use(...middlewares: (MiddlewareHandler | Middleware)[]): this; } -// @public (undocumented) +// @public export class NullTelemetryClient implements BotTelemetryClient, BotPageViewTelemetryClient { constructor(settings?: any); - // (undocumented) flush(): void; - // (undocumented) trackDependency(telemetry: TelemetryDependency): void; - // (undocumented) trackEvent(telemetry: TelemetryEvent): void; - // (undocumented) trackException(telemetry: TelemetryException): void; - // (undocumented) trackPageView(telemetry: TelemetryPageView): void; - // (undocumented) trackTrace(telemetry: TelemetryTrace): void; } // @public -export const OAuthLoginTimeoutKey: string; +export const OAuthLoginTimeoutKey = "loginTimeout"; // @public -export const OAuthLoginTimeoutMsValue: number; +export const OAuthLoginTimeoutMsValue = 900000; // @public export interface PagedResult { @@ -404,19 +432,27 @@ export interface PropertyManager { createProperty(name: string): StatePropertyAccessor; } +// @public +export abstract class QueueStorage { + abstract queueActivity(activity: Partial, visibilityTimeout?: number, timeToLive?: number): Promise; +} + // @public export interface RecognizerResult { [propName: string]: any; alteredText?: string; entities?: any; - intents: { - [name: string]: { - score: number; - }; - }; + intents: Record; text: string; } +// @public +export class RegisterClassMiddleware implements Middleware { + constructor(service: T, key: string | symbol); + onTurn(turnContext: TurnContext, next: () => Promise): Promise; + service: T; +} + // @public export type SendActivitiesHandler = (context: TurnContext, activities: Partial[], next: () => Promise) => Promise; @@ -440,6 +476,17 @@ export class ShowTypingMiddleware implements Middleware { onTurn(context: TurnContext, next: () => Promise): Promise; } +// @public (undocumented) +export class SkillConversationIdFactory extends SkillConversationIdFactoryBase { + constructor(storage: Storage_2); + // (undocumented) + createSkillConversationIdWithOptions(options: SkillConversationIdFactoryOptions): Promise; + // (undocumented) + deleteConversationReference(skillConversationId: string): Promise; + // (undocumented) + getSkillConversationReference(skillConversationId: string): Promise; + } + // @public export abstract class SkillConversationIdFactoryBase { // @deprecated @@ -472,9 +519,7 @@ export const SkillConversationReferenceKey: unique symbol; // @public export class SkypeMentionNormalizeMiddleware implements Middleware { - // (undocumented) static normalizeSkypeMentionText(activity: Activity): void; - // (undocumented) onTurn(turnContext: TurnContext, next: () => Promise): Promise; } @@ -510,6 +555,13 @@ export interface StoreItems { [key: string]: any; } +// @public +export class StringUtils { + static ellipsis(text: string, length: number): string; + static ellipsisHash(text: string, length: number): string; + static hash(text: string): string; +} + // @public (undocumented) export interface TelemetryDependency { // (undocumented) @@ -567,38 +619,18 @@ export class TelemetryLoggerMiddleware implements Middleware { static readonly botMsgReceiveEvent: string; static readonly botMsgSendEvent: string; static readonly botMsgUpdateEvent: string; - protected fillDeleteEventProperties(activity: Activity, telemetryProperties?: { - [key: string]: string; - }): Promise<{ - [key: string]: string; - }>; - protected fillReceiveEventProperties(activity: Activity, telemetryProperties?: { - [key: string]: string; - }): Promise<{ - [key: string]: string; - }>; - protected fillSendEventProperties(activity: Activity, telemetryProperties?: { - [key: string]: string; - }): Promise<{ - [key: string]: string; - }>; - protected fillUpdateEventProperties(activity: Activity, telemetryProperties?: { - [key: string]: string; - }): Promise<{ - [key: string]: string; - }>; - readonly logPersonalInformation: boolean; + protected fillDeleteEventProperties(activity: Activity, telemetryProperties?: Record): Promise>; + protected fillReceiveEventProperties(activity: Activity, telemetryProperties?: Record): Promise>; + protected fillSendEventProperties(activity: Activity, telemetryProperties?: Record): Promise>; + protected fillUpdateEventProperties(activity: Activity, telemetryProperties?: Record): Promise>; + get logPersonalInformation(): boolean; protected onDeleteActivity(activity: Activity): Promise; protected onReceiveActivity(activity: Activity): Promise; protected onSendActivity(activity: Activity): Promise; onTurn(context: TurnContext, next: () => Promise): Promise; protected onUpdateActivity(activity: Activity): Promise; - readonly telemetryClient: BotTelemetryClient; - // Warning: (ae-forgotten-export) The symbol "TelemetryConstants" needs to be exported by the entry point index.d.ts - // - // (undocumented) - readonly telemetryConstants: TelemetryConstants; -} + get telemetryClient(): BotTelemetryClient; + } // @public (undocumented) export interface TelemetryPageView { @@ -626,7 +658,7 @@ export interface TelemetryTrace { severityLevel?: Severity; } -// @public (undocumented) +// @public export function telemetryTrackDialogView(telemetryClient: BotTelemetryClient, dialogName: string, properties?: { [key: string]: any; }, metrics?: { @@ -634,43 +666,49 @@ export function telemetryTrackDialogView(telemetryClient: BotTelemetryClient, di }): void; // @public -export type TestActivityInspector = (activity: Partial, description: string) => void; +export type TestActivityInspector = (activity: Partial, description?: string) => void; // @public export class TestAdapter extends BotAdapter implements ExtendedUserTokenProvider { - constructor(logic: (context: TurnContext) => Promise, template?: Partial, sendTraceActivities?: boolean); - readonly activityBuffer: Partial[]; - // (undocumented) + constructor(logicOrConversation?: ((context: TurnContext) => Promise) | ConversationReference, template?: Partial, sendTraceActivity?: boolean); + readonly activeQueue: Partial[]; + get activityBuffer(): Partial[]; addExchangeableToken(connectionName: string, channelId: string, userId: string, exchangeableItem: string, token: string): void; addUserToken(connectionName: string, channelId: string, userId: string, token: string, magicCode?: string): void; continueConversation(reference: Partial, logic: (revocableContext: TurnContext) => Promise): Promise; + conversation: ConversationReference; protected createContext(request: Partial): TurnContext; + static createConversation(name: string, user?: string, bot?: string): ConversationReference; deleteActivity(context: TurnContext, reference: Partial): Promise; - readonly deletedActivities: Partial[]; - // (undocumented) + get enableTrace(): boolean; + set enableTrace(value: boolean); exchangeToken(context: TurnContext, connectionName: string, userId: string, tokenExchangeRequest: TokenExchangeRequest): Promise; getAadTokens(context: TurnContext, connectionName: string, resourceUrls: string[]): Promise<{ [propertyName: string]: TokenResponse; }>; + getNextReply(): Partial; getSignInLink(context: TurnContext, connectionName: string): Promise; - // (undocumented) getSignInResource(context: TurnContext, connectionName: string, userId?: string, finalRedirect?: string): Promise; + getTokenStatus(context: TurnContext, userId: string, includeFilter?: string, oAuthAppCredentials?: any): Promise; getUserToken(context: TurnContext, connectionName: string, magicCode?: string): Promise; + locale: string; + makeActivity(text?: string): Partial; + processActivity(activity: string | Partial, callback?: (context: TurnContext) => Promise): Promise; receiveActivity(activity: string | Partial): Promise; send(userSays: string | Partial): TestFlow; sendActivities(context: TurnContext, activities: Partial[]): Promise; - signOutUser(context: TurnContext, connectionName: string): Promise; + sendTextToBot(userSays: string, callback: (context: TurnContext) => Promise): Promise; + signOutUser(context: TurnContext, connectionName?: string, userId?: string): Promise; readonly template: Partial; test(userSays: string | Partial, expected: string | Partial | ((activity: Partial, description?: string) => void), description?: string, timeout?: number): TestFlow; testActivities(activities: Partial[], description?: string, timeout?: number): TestFlow; throwOnExchangeRequest(connectionName: string, channelId: string, userId: string, exchangeableItem: string): void; - updateActivity(context: TurnContext, activity: Partial): Promise; - readonly updatedActivities: Partial[]; + updateActivity(context: TurnContext, activity: Partial): Promise; } // @public export class TestFlow { - constructor(previous: Promise, adapter: TestAdapter); + constructor(previous: Promise, adapter: TestAdapter, callback?: (turnContext: TurnContext) => Promise); assertNoReply(description?: string, timeout?: number): TestFlow; assertReply(expected: string | Partial | TestActivityInspector, description?: string, timeout?: number): TestFlow; assertReplyOneOf(candidates: string[], description?: string, timeout?: number): TestFlow; @@ -679,13 +717,14 @@ export class TestFlow { // (undocumented) previous: Promise; send(userSays: string | Partial): TestFlow; + sendConversationUpdate(): TestFlow; startTest(): Promise; test(userSays: string | Partial, expected: string | Partial | ((activity: Partial, description?: string) => void), description?: string, timeout?: number): TestFlow; then(onFulfilled?: () => void): TestFlow; } // @public (undocumented) -export const tokenExchangeOperationName: string; +export const tokenExchangeOperationName = "signin/tokenExchange"; // @public export interface TokenPollingSettings { @@ -694,10 +733,10 @@ export interface TokenPollingSettings { } // @public -export const TokenPollingSettingsKey: string; +export const TokenPollingSettingsKey = "tokenPollingSettings"; // @public (undocumented) -export const tokenResponseEventName: string; +export const tokenResponseEventName = "tokens/response"; // @public export interface TranscriptInfo { @@ -732,8 +771,8 @@ export interface TurnContext { export class TurnContext { constructor(adapterOrContext: BotAdapter, request: Partial); constructor(adapterOrContext: TurnContext); - readonly activity: Activity; - readonly adapter: BotAdapter; + get activity(): Activity; + get adapter(): BotAdapter; static applyConversationReference(activity: Partial, reference: Partial, isIncoming?: boolean): Partial; readonly bufferedReplyActivities: Partial[]; protected copyTo(context: TurnContext): void; @@ -741,21 +780,26 @@ export class TurnContext { static getConversationReference(activity: Partial): Partial; static getMentions(activity: Partial): Mention[]; static getReplyConversationReference(activity: Partial, reply: ResourceResponse): Partial; + get locale(): string | undefined; + set locale(value: string | undefined); onDeleteActivity(handler: DeleteActivityHandler): this; onSendActivities(handler: SendActivitiesHandler): this; onUpdateActivity(handler: UpdateActivityHandler): this; static removeMentionText(activity: Partial, id: string): string; static removeRecipientMention(activity: Partial): string; - responded: boolean; + get responded(): boolean; + set responded(value: boolean); sendActivities(activities: Partial[]): Promise; sendActivity(activityOrText: string | Partial, speak?: string, inputHint?: string): Promise; sendTraceActivity(name: string, value?: any, valueType?: string, label?: string): Promise; - readonly turnState: TurnContextStateCollection; - updateActivity(activity: Partial): Promise; + get turnState(): TurnContextStateCollection; + updateActivity(activity: Partial): Promise; } // @public export class TurnContextStateCollection extends Map { + get(key: any): T; + get(key: any): any; pop(key: any): any; push(key: any, value: any): void; } @@ -763,6 +807,9 @@ export class TurnContextStateCollection extends Map { // @public export type UpdateActivityHandler = (context: TurnContext, activity: Partial, next: () => Promise) => Promise; +// @public +export function useBotState(botAdapter: BotAdapter, ...botStates: BotState[]): BotAdapter; + // @public export class UserState extends BotState { constructor(storage: Storage_2, namespace?: string); @@ -770,7 +817,7 @@ export class UserState extends BotState { } // @public -export const verifyStateOperationName: string; +export const verifyStateOperationName = "signin/verifyState"; export * from "botframework-schema"; diff --git a/libraries/botbuilder-core/src/botAdapter.ts b/libraries/botbuilder-core/src/botAdapter.ts index 61182aa6c4..ddbfbe6b31 100644 --- a/libraries/botbuilder-core/src/botAdapter.ts +++ b/libraries/botbuilder-core/src/botAdapter.ts @@ -112,17 +112,6 @@ export abstract class BotAdapter { return this.turnError; } - /** - * Sets an error handler that can catch exceptions in the middleware or application. - * - * @remarks - * The error handler is called with these parameters: - * - * | Name | Type | Description | - * | :--- | :--- | :--- | - * | `context` | [TurnContext](xref:botbuilder-core.TurnContext) | The context object for the turn. | - * | `error` | `Error` | The Node.js error thrown. | - */ public set onTurnError(value: (context: TurnContext, error: Error) => Promise) { this.turnError = value; } diff --git a/libraries/botbuilder-core/src/testAdapter.ts b/libraries/botbuilder-core/src/testAdapter.ts index 53972968fb..dec6fe058a 100644 --- a/libraries/botbuilder-core/src/testAdapter.ts +++ b/libraries/botbuilder-core/src/testAdapter.ts @@ -105,9 +105,6 @@ export class TestAdapter extends BotAdapter implements ExtendedUserTokenProvider return this._sendTraceActivity; } - /** - * Sets a value inidicating whether to send trace activities. - */ public set enableTrace(value: boolean) { this._sendTraceActivity = value; } diff --git a/libraries/botbuilder-core/src/turnContext.ts b/libraries/botbuilder-core/src/turnContext.ts index c5df01e7f2..1c1a69e11d 100644 --- a/libraries/botbuilder-core/src/turnContext.ts +++ b/libraries/botbuilder-core/src/turnContext.ts @@ -774,9 +774,6 @@ export class TurnContext { return undefined; } - /** - * Sets the locale stored in the turnState. - */ public set locale(value: string | undefined) { const turnObj = this._turnState[this._turn]; if (turnObj) { @@ -786,15 +783,6 @@ export class TurnContext { } } - /** - * Sets the response flag on the current turn context. - * - * @remarks - * The [sendActivity](xref:botbuilder-core.TurnContext.sendActivity) and - * [sendActivities](xref:botbuilder-core.TurnContext.sendActivities) methods call this method to - * update the responded flag. You can call this method directly to indicate that your bot has - * responded appropriately to the incoming activity. - */ public set responded(value: boolean) { if (!value) { throw new Error(`TurnContext: cannot set 'responded' to a value of 'false'.`); diff --git a/libraries/botframework-config/etc/botframework-config.api.md b/libraries/botframework-config/etc/botframework-config.api.md index 2cd7786a61..ce7d8757f4 100644 --- a/libraries/botframework-config/etc/botframework-config.api.md +++ b/libraries/botframework-config/etc/botframework-config.api.md @@ -6,28 +6,24 @@ // Warning: (ae-forgotten-export) The symbol "AzureService" needs to be exported by the entry point index.d.ts // -// @public +// @public @deprecated export class AppInsightsService extends AzureService implements IAppInsightsService { constructor(source?: IAppInsightsService); apiKeys: { [key: string]: string; }; applicationId: string; - // (undocumented) decrypt(secret: string, decryptString: (value: string, secret: string) => string): void; - // (undocumented) encrypt(secret: string, encryptString: (value: string, secret: string) => string): void; instrumentationKey: string; } -// @public +// @public @deprecated export class BlobStorageService extends AzureService implements IBlobStorageService { constructor(source?: IBlobStorageService); connectionString: string; container: string; - // (undocumented) decrypt(secret: string, decryptString: (value: string, secret: string) => string): void; - // (undocumented) encrypt(secret: string, encryptString: (value: string, secret: string) => string): void; } @@ -74,29 +70,25 @@ export class BotConfigurationBase implements Partial { version: string; } -// @public +// @public @deprecated (undocumented) export class BotRecipe { constructor(); - // (undocumented) static fromJSON(source?: Partial): BotRecipe; // (undocumented) resources: IResource[]; - // (undocumented) toJSON(): Partial; version: string; } -// @public +// @public @deprecated export class BotService extends AzureService implements IBotService { constructor(source?: IBotService); appId: string; - // (undocumented) decrypt(secret: string, decryptString: (value: string, secret: string) => string): void; - // (undocumented) encrypt(secret: string, encryptString: (value: string, secret: string) => string): void; } -// @public +// @public @deprecated export class ConnectedService implements IConnectedService { constructor(source?: IConnectedService, type?: ServiceTypes); decrypt(secret: string, decryptString: (value: string, secret: string) => string): void; @@ -108,57 +100,49 @@ export class ConnectedService implements IConnectedService { type?: ServiceTypes; } -// @public +// @public @deprecated export class CosmosDbService extends AzureService implements ICosmosDBService { constructor(source?: ICosmosDBService); collection: string; database: string; - // (undocumented) decrypt(secret: string, decryptString: (value: string, secret: string) => string): void; - // (undocumented) encrypt(secret: string, encryptString: (value: string, secret: string) => string): void; endpoint: string; key: string; } -// @public +// @public @deprecated export class DispatchService extends LuisService implements IDispatchService { constructor(source?: IDispatchService); serviceIds: string[]; } -// @public +// @public @deprecated export class EndpointService extends ConnectedService implements IEndpointService { constructor(source: IEndpointService); appId: string; appPassword: string; channelService: string; - // (undocumented) decrypt(secret: string, decryptString: (value: string, secret: string) => string): void; - // (undocumented) encrypt(secret: string, encryptString: (value: string, secret: string) => string): void; endpoint: string; } -// @public +// @public @deprecated export class FileService extends ConnectedService implements IFileService { constructor(source?: IFileService); - // (undocumented) decrypt(secret: string, decryptString: (value: string, secret: string) => string): void; - // (undocumented) encrypt(secret: string, encryptString: (value: string, secret: string) => string): void; path: string; } -// @public +// @public @deprecated export class GenericService extends ConnectedService implements IGenericService { constructor(source?: IGenericService); configuration: { [key: string]: string; }; - // (undocumented) decrypt(secret: string, decryptString: (value: string, secret: string) => string): void; - // (undocumented) encrypt(secret: string, encryptString: (value: string, secret: string) => string): void; url: string; } @@ -180,7 +164,7 @@ export interface IAzureService extends IConnectedService { tenantId: string; } -// @public (undocumented) +// @public @deprecated (undocumented) export interface IBlobResource extends IResource { // (undocumented) container: string; @@ -213,7 +197,7 @@ export interface IConnectedService { readonly type?: ServiceTypes; } -// @public (undocumented) +// @public @deprecated (undocumented) export interface ICosmosDBResource extends IResource { // (undocumented) collection: string; @@ -229,7 +213,7 @@ export interface ICosmosDBService extends IAzureService { key: string; } -// @public (undocumented) +// @public @deprecated (undocumented) export interface IDispatchResource extends IResource { // (undocumented) serviceIds: string[]; @@ -248,7 +232,7 @@ export interface IEndpointService extends IConnectedService { endpoint: string; } -// @public (undocumented) +// @public @deprecated (undocumented) export interface IFileResource extends IResource { // (undocumented) path: string; @@ -259,7 +243,7 @@ export interface IFileService extends IConnectedService { path: string; } -// @public (undocumented) +// @public @deprecated (undocumented) export interface IGenericResource extends IUrlResource { // (undocumented) configuration: { @@ -293,7 +277,7 @@ export interface IQnAService extends IConnectedService { subscriptionKey: string; } -// @public (undocumented) +// @public @deprecated (undocumented) export interface IResource { // (undocumented) id?: string; @@ -303,21 +287,19 @@ export interface IResource { readonly type: ServiceTypes; } -// @public (undocumented) +// @public @deprecated (undocumented) export interface IUrlResource extends IResource { // (undocumented) url: string; } -// @public +// @public @deprecated export class LuisService extends ConnectedService implements ILuisService { constructor(source?: ILuisService, serviceType?: ServiceTypes); appId: string; authoringKey: string; customEndpoint: string; - // (undocumented) decrypt(secret: string, decryptString: (value: string, secret: string) => string): void; - // (undocumented) encrypt(secret: string, encryptString: (value: string, secret: string) => string): void; getEndpoint(): string; region: string; @@ -325,12 +307,10 @@ export class LuisService extends ConnectedService implements ILuisService { version: string; } -// @public +// @public @deprecated export class QnaMakerService extends ConnectedService implements IQnAService { constructor(source?: IQnAService); - // (undocumented) decrypt(secret: string, decryptString: (value: string, secret: string) => string): void; - // (undocumented) encrypt(secret: string, encryptString: (value: string, secret: string) => string): void; endpointKey: string; hostname: string; diff --git a/libraries/botframework-schema/etc/botframework-schema.api.md b/libraries/botframework-schema/etc/botframework-schema.api.md index d8f6f201b2..aa83ee8f9b 100644 --- a/libraries/botframework-schema/etc/botframework-schema.api.md +++ b/libraries/botframework-schema/etc/botframework-schema.api.md @@ -4,6 +4,9 @@ ```ts +import { Assertion } from 'botbuilder-stdlib'; +import { Test } from 'botbuilder-stdlib'; + // @public export type Action = 'accept' | 'decline'; @@ -60,7 +63,7 @@ export interface Activity { localTimezone: string; membersAdded?: ChannelAccount[]; membersRemoved?: ChannelAccount[]; - name?: string; + name?: ActivityEventNames | string; reactionsAdded?: MessageReaction[]; reactionsRemoved?: MessageReaction[]; recipient: ChannelAccount; @@ -81,6 +84,50 @@ export interface Activity { valueType: string; } +// @public +export enum ActivityEventNames { + // (undocumented) + ContinueConversation = "ContinueConversation", + // (undocumented) + CreateConversation = "CreateConversation" +} + +// @public (undocumented) +export namespace ActivityEx { + export function asCommandActivity(source: Partial): Partial>; + export function asCommandResultActivity(source: Partial): Partial>; + export function asContactRelationUpdateActivity(source: Partial): Partial; + export function asConversationUpdateActivity(source: Partial): Partial; + export function asEndOfConversationActivity(source: Partial): Partial; + export function asEventActivity(source: Partial): Partial; + export function asHandoffActivity(source: Partial): Partial; + export function asInstallationUpdateActivity(source: Partial): Partial; + export function asInvokeActivity(source: Partial): Partial; + export function asMessageActivity(source: Partial): Partial; + export function asMessageDeleteActivity(source: Partial): Partial; + export function asMessageReactionActivity(source: Partial): Partial; + export function asMessageUpdateActivity(source: Partial): Partial; + export function asSuggestionActivity(source: Partial): Partial; + export function asTraceActivity(source: Partial): Partial; + export function asTypingActivity(source: Partial): Partial; + export function createContactRelationUpdateActivity(): Partial; + export function createConversationUpdateActivity(): Partial; + export function createEndOfConversationActivity(): Partial; + export function createEventActivity(): Partial; + export function createHandoffActivity(): Partial; + export function createInvokeActivity(): Partial; + export function createMessageActivity(): Partial; + export function createReply(source: Activity, text?: string, locale?: string): Activity; + export function createTrace(source: Activity, name: string, value?: unknown, valueType?: string, label?: string): ITraceActivity; + export function createTraceActivity(name: string, valueType?: string, value?: unknown, label?: string): Partial; + export function createTypingActivity(): Partial; + export function getConversationReference(source: Partial): ConversationReference; + export function getMentions(source: Partial): Mention[]; + export function hasContent(source: Partial): boolean; + export function isActivity(source: Partial, activityType: string): boolean; + export function isFromStreamingConnection(source: Partial): boolean; +} + // @public export type ActivityImageType = 'avatar' | 'article'; @@ -106,6 +153,10 @@ export interface ActivityTimestamps extends Activity { // @public export enum ActivityTypes { + // (undocumented) + Command = "command", + // (undocumented) + CommandResult = "commandResult", // (undocumented) ContactRelationUpdate = "contactRelationUpdate", // (undocumented) @@ -123,6 +174,8 @@ export enum ActivityTypes { // (undocumented) Invoke = "invoke", // (undocumented) + InvokeResponse = "invokeResponse", + // (undocumented) Message = "message", // (undocumented) MessageDelete = "messageDelete", @@ -138,6 +191,35 @@ export enum ActivityTypes { Typing = "typing" } +// @public +export interface AdaptiveCardAuthentication { + connectionName: string; + id: string; + token: string; +} + +// @public +export interface AdaptiveCardInvokeAction { + data: Record; + id: string; + type: string; + verb: string; +} + +// @public +export interface AdaptiveCardInvokeResponse { + statusCode: number; + type: string; + value: Record; +} + +// @public +export interface AdaptiveCardInvokeValue { + action: AdaptiveCardInvokeAction; + authentication: AdaptiveCardAuthentication; + state: string; +} + // @public export interface AnimationCard { aspect: string; @@ -163,6 +245,42 @@ export interface AppBasedLinkQuery { // @public export type ApplicationIdentityType = 'aadApplication' | 'bot' | 'tenantBot' | 'office365Connector' | 'webhook'; +// @public (undocumented) +export const assertActivity: Assertion; + +// @public (undocumented) +export const assertAttachment: Assertion; + +// @public (undocumented) +export const assertAttachmentInfo: Assertion; + +// @public (undocumented) +export const assertAttachmentView: Assertion; + +// @public (undocumented) +export const assertCardAction: Assertion; + +// @public (undocumented) +export const assertChannelAccount: Assertion; + +// @public (undocumented) +export const assertConversationAccount: Assertion; + +// @public (undocumented) +export const assertConversationReference: Assertion; + +// @public (undocumented) +export const assertEntity: Assertion; + +// @public (undocumented) +export const assertMessageReaction: Assertion; + +// @public (undocumented) +export const assertSemanticAction: Assertion; + +// @public (undocumented) +export const assertSuggestedActions: Assertion; + // @public export interface Attachment { content?: any; @@ -236,6 +354,12 @@ export type BotMessagePreviewActionType = 'edit' | 'send'; // @public export type BotMessagePreviewType = 'message' | 'continue'; +// @public +export interface CacheInfo { + cacheDuration?: number; + cacheType?: string; +} + // @public export class CallerIdConstants { static readonly BotToBotPrefix: string; @@ -248,11 +372,11 @@ export interface CardAction { channelData?: any; displayText?: string; image?: string; + imageAltText?: string; text?: string; title: string; type: ActionTypes | string; value: any; - imageAltText?: string; } // @public @@ -311,6 +435,8 @@ export enum Channels { // (undocumented) Telegram = "telegram", // (undocumented) + Telephony = "telephony", + // (undocumented) Test = "test", // (undocumented) Twilio = "twilio-sms", @@ -321,6 +447,19 @@ export enum Channels { // @public export type CommandContext = 'message' | 'compose' | 'commandbox'; +// @public +export interface CommandResultValue { + commandId: string; + data?: T; + error?: Error; +} + +// @public +export interface CommandValue { + commandId: string; + data?: T; +} + // @public export enum ContactRelationUpdateActionTypes { // (undocumented) @@ -341,7 +480,7 @@ export interface ConversationAccount { name: string; properties?: any; role?: RoleTypes; - tenantId: string; + tenantId?: string; } // @public @@ -423,6 +562,7 @@ export enum EndOfConversationCodes { // @public export interface Entity { + [key: string]: any; type: string; } @@ -500,20 +640,6 @@ export interface GeoCoordinates { type: string; } -// @public -export interface HealthCheckResponse { - healthResults: HealthResults; -} - -// @public -export interface HealthResults { - "user-agent"?: string; - authorization?: string; - diagnostics?: any; - messages?: string[]; - success: boolean; -} - // @public export interface HeroCard { buttons: CardAction[]; @@ -540,6 +666,20 @@ export interface IActivity { type: ActivityTypes | string; } +// @public +export interface ICommandActivity extends IActivity { + name: string; + value?: CommandValue; +} + +// @public +export interface ICommandResultActivity extends IActivity { + // (undocumented) + name: string; + // (undocumented) + value?: CommandResultValue; +} + // @public (undocumented) export interface IContactRelationUpdateActivity extends IActivity { action?: string; @@ -567,8 +707,7 @@ export interface IEventActivity extends IActivity { } // @public (undocumented) -export interface IHandoffActivity extends IActivity { -} +export type IHandoffActivity = IActivity; // @public (undocumented) export interface IInstallationUpdateActivity extends IActivity { @@ -600,8 +739,7 @@ export interface IMessageActivity extends IActivity { } // @public (undocumented) -export interface IMessageDeleteActivity extends IActivity { -} +export type IMessageDeleteActivity = IActivity; // @public (undocumented) export interface IMessageReactionActivity extends IActivity { @@ -640,6 +778,48 @@ export enum InstallationUpdateActionTypes { Remove = "remove" } +// @public +export interface InvokeResponse { + body?: T; + status: number; +} + +// @public (undocumented) +export const isActivity: Test; + +// @public (undocumented) +export const isAttachment: Test; + +// @public (undocumented) +export const isAttachmentInfo: Test; + +// @public (undocumented) +export const isAttachmentView: Test; + +// @public (undocumented) +export const isCardAction: Test; + +// @public (undocumented) +export const isChannelAccount: Test; + +// @public (undocumented) +export const isConversationAccount: Test; + +// @public (undocumented) +export const isConversationReference: Test; + +// @public (undocumented) +export const isEntity: Test; + +// @public (undocumented) +export const isMessageReaction: Test; + +// @public (undocumented) +export const isSemanticAction: Test; + +// @public (undocumented) +export const isSuggestedActions: Test; + // @public (undocumented) export interface IStatusCodeError { // (undocumented) @@ -663,8 +843,7 @@ export interface ITraceActivity extends IActivity { } // @public (undocumented) -export interface ITypingActivity extends IActivity { -} +export type ITypingActivity = IActivity; // @public export interface MediaCard { @@ -693,6 +872,12 @@ export interface MediaUrl { url: string; } +// @public +export interface Meeting { + inMeeting?: boolean; + role?: string; +} + // @public export interface Mention { mentioned: ChannelAccount; @@ -711,6 +896,7 @@ export interface MessageActionsPayload { id?: string; importance?: Importance; lastModifiedDateTime?: string; + linkToMessage?: string; locale?: string; mentions?: MessageActionsPayloadMention[]; messageType?: MessageType; @@ -718,7 +904,6 @@ export interface MessageActionsPayload { replyToId?: string; subject?: string; summary?: string; - linkToMessage?: string; } // @public @@ -807,6 +992,7 @@ export interface MessagingExtensionAction extends TaskModuleRequest { // @public export interface MessagingExtensionActionResponse { + cacheInfo?: CacheInfo; composeExtension?: MessagingExtensionResult; task?: TaskModuleContinueResponse | TaskModuleMessageResponse; } @@ -838,6 +1024,7 @@ export interface MessagingExtensionQueryOptions { // @public export interface MessagingExtensionResponse { + cacheInfo?: CacheInfo; composeExtension?: MessagingExtensionResult; } @@ -869,6 +1056,8 @@ export interface MicrosoftPayMethodData { // @public export interface NotificationInfo { alert?: boolean; + alertInMeeting?: boolean; + externalResourceUrl?: string; } // @public @@ -1008,7 +1197,7 @@ export interface PagedMembersResult { } // @public @deprecated -export interface PaymentAddress { +interface PaymentAddress_2 { addressLine: string[]; city: string; country: string; @@ -1022,45 +1211,55 @@ export interface PaymentAddress { sortingCode: string; } +export { PaymentAddress_2 as PaymentAddress } + // @public @deprecated -export interface PaymentCurrencyAmount { +interface PaymentCurrencyAmount_2 { currency: string; currencySystem: string; value: string; } +export { PaymentCurrencyAmount_2 as PaymentCurrencyAmount } + // @public @deprecated export interface PaymentDetails { - displayItems: PaymentItem[]; + displayItems: PaymentItem_2[]; error: string; - modifiers: PaymentDetailsModifier[]; - shippingOptions: PaymentShippingOption[]; - total: PaymentItem; + modifiers: PaymentDetailsModifier_2[]; + shippingOptions: PaymentShippingOption_2[]; + total: PaymentItem_2; } // @public @deprecated -export interface PaymentDetailsModifier { - additionalDisplayItems: PaymentItem[]; +interface PaymentDetailsModifier_2 { + additionalDisplayItems: PaymentItem_2[]; data: any; supportedMethods: string[]; - total: PaymentItem; + total: PaymentItem_2; } +export { PaymentDetailsModifier_2 as PaymentDetailsModifier } + // @public @deprecated -export interface PaymentItem { - amount: PaymentCurrencyAmount; +interface PaymentItem_2 { + amount: PaymentCurrencyAmount_2; label: string; pending: boolean; } +export { PaymentItem_2 as PaymentItem } + // @public @deprecated -export interface PaymentMethodData { +interface PaymentMethodData_2 { data: any; supportedMethods: string[]; } +export { PaymentMethodData_2 as PaymentMethodData } + // @public @deprecated -export interface PaymentOptions { +interface PaymentOptions_2 { requestPayerEmail: boolean; requestPayerName: boolean; requestPayerPhone: boolean; @@ -1068,20 +1267,24 @@ export interface PaymentOptions { shippingType: string; } +export { PaymentOptions_2 as PaymentOptions } + // @public @deprecated -export interface PaymentRequest { +interface PaymentRequest_2 { details: PaymentDetails; expires: string; id: string; - methodData: PaymentMethodData[]; - options: PaymentOptions; + methodData: PaymentMethodData_2[]; + options: PaymentOptions_2; } +export { PaymentRequest_2 as PaymentRequest } + // @public @deprecated export interface PaymentRequestComplete { id: string; - paymentRequest: PaymentRequest; - paymentResponse: PaymentResponse; + paymentRequest: PaymentRequest_2; + paymentResponse: PaymentResponse_2; } // @public @deprecated @@ -1093,7 +1296,7 @@ export interface PaymentRequestCompleteResult { export interface PaymentRequestUpdate { details: PaymentDetails; id: string; - shippingAddress: PaymentAddress; + shippingAddress: PaymentAddress_2; shippingOption: string; } @@ -1103,23 +1306,27 @@ export interface PaymentRequestUpdateResult { } // @public @deprecated -export interface PaymentResponse { +interface PaymentResponse_2 { details: any; methodName: string; payerEmail: string; payerPhone: string; - shippingAddress: PaymentAddress; + shippingAddress: PaymentAddress_2; shippingOption: string; } +export { PaymentResponse_2 as PaymentResponse } + // @public @deprecated -export interface PaymentShippingOption { - amount: PaymentCurrencyAmount; +interface PaymentShippingOption_2 { + amount: PaymentCurrencyAmount_2; id: string; label: string; selected: boolean; } +export { PaymentShippingOption_2 as PaymentShippingOption } + // @public export interface Place { address: any; @@ -1165,6 +1372,8 @@ export enum RoleTypes { // (undocumented) Bot = "bot", // (undocumented) + Skill = "skill", + // (undocumented) User = "user" } @@ -1204,6 +1413,11 @@ export interface SignInUrlResponse { tokenExchangeResource?: TokenExchangeResource; } +// @public +export class SpeechConstants { + static readonly EmptySpeakTag: string; +} + // @public export enum StatusCodes { // (undocumented) @@ -1225,6 +1439,8 @@ export enum StatusCodes { // (undocumented) OK = 200, // (undocumented) + PRECONDITION_FAILED = 412, + // (undocumented) UNAUTHORIZED = 401, // (undocumented) UPGRADE_REQUIRED = 426 @@ -1239,6 +1455,68 @@ export interface SuggestedActions { to: string[]; } +// @public +export interface TabContext { + theme?: string; +} + +// @public +export interface TabEntityContext { + tabEntityId?: string; +} + +// @public +export interface TabRequest { + context?: TabContext; + state?: string; + tabContext?: TabEntityContext; +} + +// @public +export interface TabResponse { + tab: TabResponsePayload; +} + +// @public +export interface TabResponseCard { + card: Record; +} + +// @public +export interface TabResponseCards { + cards: TabResponseCard[]; +} + +// @public +export interface TabResponsePayload { + suggestedActions?: TabSuggestedActions; + type?: 'continue' | 'auth' | 'silentAuth'; + value?: TabResponseCards; +} + +// @public +export interface TabSubmit { + context?: TabContext; + data?: TabSubmitData; + tabContext?: TabEntityContext; +} + +// @public +export interface TabSubmitData { + [properties: string]: unknown; + type?: string; +} + +// @public +export interface TabSuggestedActions { + actions: CardAction[]; +} + +// @public +export interface TaskModuleCardResponse extends TaskModuleResponseBase { + value?: string; +} + // @public export interface TaskModuleContinueResponse extends TaskModuleResponseBase { value?: TaskModuleTaskInfo; @@ -1253,6 +1531,7 @@ export interface TaskModuleMessageResponse extends TaskModuleResponseBase { export interface TaskModuleRequest { context?: TaskModuleRequestContext; data?: any; + tabContext?: TabEntityContext; } // @public @@ -1262,12 +1541,13 @@ export interface TaskModuleRequestContext { // @public export interface TaskModuleResponse { + cacheInfo?: CacheInfo; task?: TaskModuleContinueResponse | TaskModuleMessageResponse; } // @public export interface TaskModuleResponseBase { - type?: BotMessagePreviewActionType; + type?: BotMessagePreviewType; } // @public @@ -1275,10 +1555,10 @@ export interface TaskModuleTaskInfo { card?: Attachment; completionBotId?: string; fallbackUrl?: string; - height?: any; + height?: number | 'small' | 'medium' | 'large'; title?: string; url?: string; - width?: any; + width?: number | 'small' | 'medium' | 'large'; } // @public @@ -1292,9 +1572,9 @@ export interface TeamDetails { // @public export interface TeamInfo { + aadGroupId?: string; id?: string; name?: string; - aadGroupId?: string; } // @public (undocumented) @@ -1317,11 +1597,24 @@ export interface TeamsChannelAccount extends ChannelAccount { export interface TeamsChannelData { channel?: ChannelInfo; eventType?: string; + meeting?: TeamsMeetingInfo; notification?: NotificationInfo; team?: TeamInfo; tenant?: TenantInfo; } +// @public +export interface TeamsMeetingInfo { + id?: string; +} + +// @public +export interface TeamsMeetingParticipant { + conversation?: ConversationAccount; + meeting?: Meeting; + user?: TeamsChannelAccount; +} + // @public (undocumented) export interface TeamsPagedMembersResult { continuationToken: string; @@ -1378,6 +1671,14 @@ export interface TokenExchangeInvokeRequest { token: string; } +// @public +export interface TokenExchangeInvokeResponse { + connectionName: string; + failureDetail: string; + id: string; + properties?: Record; +} + // @public export interface TokenExchangeRequest { token?: string; @@ -1391,6 +1692,14 @@ export interface TokenExchangeResource { uri?: string; } +// @public +export type TokenExchangeState = { + connectionName: string; + conversation: ConversationReference; + relatesTo: ConversationReference; + msAppId: string; +}; + // @public export interface TokenRequest { provider: string; @@ -1410,6 +1719,14 @@ export interface TokenResponse { token: string; } +// @public +export type TokenStatus = { + channelId: string; + connectionName: string; + hasToken: boolean; + serviceProviderDisplayName: string; +}; + // @public export interface Transcript { activities: Activity[]; @@ -1422,7 +1739,7 @@ export type Type = 'ViewAction' | 'OpenUri' | 'HttpPOST' | 'ActionCard'; export type Type1 = O365ConnectorCardInputBaseType; // @public @deprecated (undocumented) -export type Type2 = BotMessagePreviewActionType; +export type Type2 = BotMessagePreviewType; // @public @deprecated (undocumented) export type Type3 = MessagingExtensionResultType; diff --git a/libraries/botframework-schema/src/index.ts b/libraries/botframework-schema/src/index.ts index 0392230013..72d09ce820 100644 --- a/libraries/botframework-schema/src/index.ts +++ b/libraries/botframework-schema/src/index.ts @@ -3,7 +3,7 @@ * Licensed under the MIT License. */ -import { Assertion, Nil, assert } from 'botbuilder-stdlib'; +import { Assertion, Nil, assert, Test } from 'botbuilder-stdlib'; export * from './activityInterfaces'; export * from './activityEx'; @@ -37,7 +37,7 @@ export const assertAttachmentView: Assertion = (value, path) => const assertAttachmentViewArray: Assertion> = assert.arrayOf(assertAttachmentView); -export const isAttachmentView = assert.toTest(assertAttachmentView); +export const isAttachmentView: Test = assert.toTest(assertAttachmentView); /** * Metadata for an attachment diff --git a/libraries/botframework-streaming/etc/botframework-streaming.api.md b/libraries/botframework-streaming/etc/botframework-streaming.api.md index 5c29179daa..4aeebd74ed 100644 --- a/libraries/botframework-streaming/etc/botframework-streaming.api.md +++ b/libraries/botframework-streaming/etc/botframework-streaming.api.md @@ -6,45 +6,25 @@ import { Duplex } from 'stream'; import { DuplexOptions } from 'stream'; -import * as WebSocket from 'ws'; +import * as WebSocket_2 from 'ws'; -// @public (undocumented) -export class BrowserWebSocket implements ISocket { - // Warning: (ae-forgotten-export) The symbol "IBrowserWebSocket" needs to be exported by the entry point index.d.ts - constructor(socket?: IBrowserWebSocket); - close(): void; - connect(serverAddress: string): Promise; - readonly isConnected: boolean; - setOnCloseHandler(handler: (x: any) => void): void; - setOnErrorHandler(handler: (x: any) => void): void; - setOnMessageHandler(handler: (x: any) => void): void; - write(buffer: INodeBuffer): void; -} - -// @public (undocumented) +// @public export class ContentStream { // Warning: (ae-forgotten-export) The symbol "PayloadAssembler" needs to be exported by the entry point index.d.ts constructor(id: string, assembler: PayloadAssembler); - // (undocumented) cancel(): void; - // (undocumented) - readonly contentType: string; - // (undocumented) + get contentType(): string; getStream(): SubscribableStream; // (undocumented) id: string; - // (undocumented) - readonly length: number; - // (undocumented) + get length(): number; readAsJson(): Promise; - // (undocumented) readAsString(): Promise; } -// @public (undocumented) +// @public export class HttpContent { constructor(headers: IHttpContentHeaders, stream: SubscribableStream); - // (undocumented) getStream(): SubscribableStream; // Warning: (ae-forgotten-export) The symbol "IHttpContentHeaders" needs to be exported by the entry point index.d.ts // @@ -178,15 +158,15 @@ export interface INodeSocket { // (undocumented) [Symbol.asyncIterator](): AsyncIterableIterator; // (undocumented) - addListener(event: "close", listener: () => void): this; + addListener(event: 'close', listener: () => void): this; // (undocumented) - addListener(event: "data", listener: (chunk: any) => void): this; + addListener(event: 'data', listener: (chunk: any) => void): this; // (undocumented) - addListener(event: "end", listener: () => void): this; + addListener(event: 'end', listener: () => void): this; // (undocumented) - addListener(event: "readable", listener: () => void): this; + addListener(event: 'readable', listener: () => void): this; // (undocumented) - addListener(event: "error", listener: (err: Error) => void): this; + addListener(event: 'error', listener: (err: Error) => void): this; // (undocumented) addListener(event: string | symbol, listener: (...args: any[]) => void): this; // Warning: (ae-forgotten-export) The symbol "AddressInfo" needs to be exported by the entry point index.d.ts @@ -218,15 +198,15 @@ export interface INodeSocket { // (undocumented) destroyed: boolean; // (undocumented) - emit(event: "close"): boolean; + emit(event: 'close'): boolean; // (undocumented) - emit(event: "data", chunk: any): boolean; + emit(event: 'data', chunk: any): boolean; // (undocumented) - emit(event: "end"): boolean; + emit(event: 'end'): boolean; // (undocumented) - emit(event: "readable"): boolean; + emit(event: 'readable'): boolean; // (undocumented) - emit(event: "error", err: Error): boolean; + emit(event: 'error', err: Error): boolean; // (undocumented) emit(event: string | symbol, ...args: any[]): boolean; // (undocumented) @@ -256,25 +236,25 @@ export interface INodeSocket { // (undocumented) on(event: string, listener: (...args: any[]) => void): this; // (undocumented) - on(event: "close", listener: (had_error: boolean) => void): this; + on(event: 'close', listener: (had_error: boolean) => void): this; // (undocumented) - on(event: "connect", listener: () => void): this; + on(event: 'connect', listener: () => void): this; // (undocumented) - on(event: "data", listener: (data: INodeBuffer) => void): this; + on(event: 'data', listener: (data: INodeBuffer) => void): this; // (undocumented) - on(event: "end", listener: () => void): this; + on(event: 'end', listener: () => void): this; // (undocumented) - on(event: "error", listener: (err: Error) => void): this; + on(event: 'error', listener: (err: Error) => void): this; // (undocumented) - once(event: "close", listener: () => void): this; + once(event: 'close', listener: () => void): this; // (undocumented) - once(event: "data", listener: (chunk: any) => void): this; + once(event: 'data', listener: (chunk: any) => void): this; // (undocumented) - once(event: "end", listener: () => void): this; + once(event: 'end', listener: () => void): this; // (undocumented) - once(event: "readable", listener: () => void): this; + once(event: 'readable', listener: () => void): this; // (undocumented) - once(event: "error", listener: (err: Error) => void): this; + once(event: 'error', listener: (err: Error) => void): this; // (undocumented) once(event: string | symbol, listener: (...args: any[]) => void): this; // (undocumented) @@ -282,31 +262,31 @@ export interface INodeSocket { // Warning: (ae-forgotten-export) The symbol "WritableStream" needs to be exported by the entry point index.d.ts // // (undocumented) - pipe(destination: T, options?: { + pipe(destination: T, options?: { end?: boolean; }): T; // (undocumented) - prependListener(event: "close", listener: () => void): this; + prependListener(event: 'close', listener: () => void): this; // (undocumented) - prependListener(event: "data", listener: (chunk: any) => void): this; + prependListener(event: 'data', listener: (chunk: any) => void): this; // (undocumented) - prependListener(event: "end", listener: () => void): this; + prependListener(event: 'end', listener: () => void): this; // (undocumented) - prependListener(event: "readable", listener: () => void): this; + prependListener(event: 'readable', listener: () => void): this; // (undocumented) - prependListener(event: "error", listener: (err: Error) => void): this; + prependListener(event: 'error', listener: (err: Error) => void): this; // (undocumented) prependListener(event: string | symbol, listener: (...args: any[]) => void): this; // (undocumented) - prependOnceListener(event: "close", listener: () => void): this; + prependOnceListener(event: 'close', listener: () => void): this; // (undocumented) - prependOnceListener(event: "data", listener: (chunk: any) => void): this; + prependOnceListener(event: 'data', listener: (chunk: any) => void): this; // (undocumented) - prependOnceListener(event: "end", listener: () => void): this; + prependOnceListener(event: 'end', listener: () => void): this; // (undocumented) - prependOnceListener(event: "readable", listener: () => void): this; + prependOnceListener(event: 'readable', listener: () => void): this; // (undocumented) - prependOnceListener(event: "error", listener: (err: Error) => void): this; + prependOnceListener(event: 'error', listener: (err: Error) => void): this; // (undocumented) prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this; // (undocumented) @@ -320,6 +300,8 @@ export interface INodeSocket { // (undocumented) readable: boolean; // (undocumented) + readonly readableFlowing: boolean | null; + // (undocumented) readonly readableHighWaterMark: number; // (undocumented) readonly readableLength: number; @@ -456,33 +438,33 @@ export class NamedPipeClient implements IStreamingTransportClient { export class NamedPipeServer implements IStreamingTransportServer { constructor(baseName: string, requestHandler?: RequestHandler, autoReconnect?: boolean); disconnect(): void; - readonly isConnected: boolean; + get isConnected(): boolean; send(request: StreamingRequest): Promise; start(): Promise; } -// @public (undocumented) +// @public export class NodeWebSocket implements ISocket { - constructor(wsSocket?: WebSocket); + constructor(wsSocket?: WebSocket_2); close(code?: number, data?: string): void; connect(serverAddress: any, port?: number): Promise; create(req: INodeIncomingMessage, socket: INodeSocket, head: INodeBuffer): Promise; - readonly isConnected: boolean; + get isConnected(): boolean; setOnCloseHandler(handler: (x: any) => void): void; setOnErrorHandler(handler: (x: any) => void): void; setOnMessageHandler(handler: (x: any) => void): void; write(buffer: INodeBuffer): void; // (undocumented) - protected wsServer: WebSocket.Server; + protected wsServer: WebSocket_2.Server; } -// @public (undocumented) +// @public export class NodeWebSocketFactory extends NodeWebSocketFactoryBase { constructor(); createWebSocket(req: INodeIncomingMessage, socket: INodeSocket, head: INodeBuffer): Promise; } -// @public (undocumented) +// @public export abstract class NodeWebSocketFactoryBase { // (undocumented) abstract createWebSocket(req: INodeIncomingMessage, socket: INodeSocket, head: INodeBuffer): Promise; @@ -493,7 +475,7 @@ export abstract class RequestHandler { abstract processRequest(request: IReceiveRequest): Promise; } -// @public (undocumented) +// @public export class StreamingRequest { addStream(content: HttpContent): void; static create(method: string, path?: string, body?: HttpContent): StreamingRequest; @@ -504,7 +486,7 @@ export class StreamingRequest { verb: string; } -// @public (undocumented) +// @public export class StreamingResponse { addStream(content: HttpContent): void; static create(statusCode: number, body?: HttpContent): StreamingResponse; @@ -515,16 +497,13 @@ export class StreamingResponse { streams: HttpContentStream[]; } -// @public (undocumented) +// @public export class SubscribableStream extends Duplex { constructor(options?: DuplexOptions); // (undocumented) length: number; - // (undocumented) _read(size: number): void; - // (undocumented) subscribe(onData: (chunk: any) => void): void; - // (undocumented) _write(chunk: any, encoding: string, callback: (error?: Error | null) => void): void; } @@ -544,7 +523,7 @@ export class WebSocketClient implements IStreamingTransportClient { export class WebSocketServer implements IStreamingTransportServer { constructor(socket: ISocket, requestHandler?: RequestHandler); disconnect(): void; - readonly isConnected: boolean; + get isConnected(): boolean; send(request: StreamingRequest): Promise; start(): Promise; } From 9494fd35b55655ac87302588bc1620304309a602 Mon Sep 17 00:00:00 2001 From: Michael Richardson Date: Fri, 14 May 2021 17:20:26 -0700 Subject: [PATCH 04/13] more test:compat test fixes --- .../botbuilder-ai-orchestrator/package.json | 3 +- .../botbuilder-ai/etc/botbuilder-ai.api.md | 362 ++++++++++++++++-- .../etc/botbuilder-applicationinsights.api.md | 22 +- .../src/telemetryInitializerMiddleware.ts | 3 - libraries/botbuilder-azure-blobs/package.json | 3 +- .../botbuilder-azure-queues/package.json | 3 +- .../etc/botbuilder-azure.api.md | 19 +- .../package.json | 3 +- .../etc/botbuilder-dialogs-declarative.api.md | 85 ++-- .../src/resources/resourceExplorer.ts | 4 + .../src/resources/resourceProvider.ts | 4 + .../etc/botbuilder-dialogs.api.md | 236 ++++++------ libraries/botbuilder-dialogs/src/dialog.ts | 6 - .../botbuilder-dialogs/src/dialogContainer.ts | 4 - .../botbuilder-dialogs/src/dialogManager.ts | 3 - libraries/botbuilder-dialogs/src/dialogSet.ts | 4 - .../etc/botbuilder-testing.api.md | 16 +- libraries/botbuilder/etc/botbuilder.api.md | 142 +++---- .../botbuilder/src/teamsActivityHandler.ts | 2 +- 19 files changed, 601 insertions(+), 323 deletions(-) diff --git a/libraries/botbuilder-ai-orchestrator/package.json b/libraries/botbuilder-ai-orchestrator/package.json index 2b9cd036ba..04f5eb5836 100644 --- a/libraries/botbuilder-ai-orchestrator/package.json +++ b/libraries/botbuilder-ai-orchestrator/package.json @@ -44,8 +44,7 @@ "clean": "rimraf _ts3.4 lib tsconfig.tsbuildinfo", "lint": "eslint . --ext .js,.ts", "postbuild": "downlevel-dts lib _ts3.4/lib --checksum", - "test": "yarn build && nyc mocha tests/", - "test:compat": "api-extractor run --verbose" + "test": "yarn build && nyc mocha tests/" }, "files": [ "_ts3.4", diff --git a/libraries/botbuilder-ai/etc/botbuilder-ai.api.md b/libraries/botbuilder-ai/etc/botbuilder-ai.api.md index 158379e3a3..4863b9ee21 100644 --- a/libraries/botbuilder-ai/etc/botbuilder-ai.api.md +++ b/libraries/botbuilder-ai/etc/botbuilder-ai.api.md @@ -5,13 +5,42 @@ ```ts import { Activity } from 'botbuilder-core'; +import { ArrayExpression } from 'adaptive-expressions'; +import { BoolExpression } from 'adaptive-expressions'; +import { BotComponent } from 'botbuilder-core'; import { BotTelemetryClient } from 'botbuilder-core'; +import { ComponentDeclarativeTypes } from 'botbuilder-dialogs-declarative'; +import { ComponentRegistration } from 'botbuilder-core'; +import { Configuration } from 'botbuilder-dialogs-adaptive-runtime-core'; +import { Converter } from 'botbuilder-dialogs'; +import { ConverterFactory } from 'botbuilder-dialogs'; +import { DialogConfiguration } from 'botbuilder-dialogs'; import { DialogContext } from 'botbuilder-dialogs'; +import { DialogEvent } from 'botbuilder-dialogs'; +import { DialogStateManager } from 'botbuilder-dialogs'; import { DialogTurnResult } from 'botbuilder-dialogs'; +import { EnumExpression } from 'adaptive-expressions'; +import { Expression } from 'adaptive-expressions'; +import { IntExpression } from 'adaptive-expressions'; import { LUISRuntimeModels } from '@azure/cognitiveservices-luis-runtime'; +import { NumberExpression } from 'adaptive-expressions'; +import { ObjectExpression } from 'adaptive-expressions'; +import { Recognizer } from 'botbuilder-dialogs'; +import { RecognizerConfiguration } from 'botbuilder-dialogs'; import { RecognizerResult } from 'botbuilder-core'; +import { ServiceCollection } from 'botbuilder-dialogs-adaptive-runtime-core'; +import { StringExpression } from 'adaptive-expressions'; +import { TemplateInterface } from 'botbuilder-dialogs'; import { TurnContext } from 'botbuilder-core'; import { WaterfallDialog } from 'botbuilder-dialogs'; +import { WaterfallStepContext } from 'botbuilder-dialogs'; + +// @public +export class ActiveLearningUtils { + static getLowScoreVariation(qnaSearchResults: QnAMakerResult[]): QnAMakerResult[]; + static MaximumScoreForLowScoreVariation: number; + static MinimumScoreForLowScoreVariation: number; +} // @public export enum Anchor { @@ -29,6 +58,20 @@ export interface DateTimeSpec { type: string; } +// @public +export interface DynamicList { + listEntityName?: string; + requestLists?: ListElement[]; +} + +// @public +export interface ExternalEntity { + entityLength?: number; + entityName?: string; + resolution?: T; + startIndex?: number; +} + // @public export interface FeedbackRecord { qnaId: string; @@ -76,6 +119,65 @@ export interface IntentData { score: number; } +// @public +export enum JoinOperator { + AND = "AND", + OR = "OR" +} + +// @public +export interface ListElement { + canonicalForm?: string; + synonyms?: string[]; +} + +// @public +export class LuisAdaptiveRecognizer extends Recognizer implements LuisAdaptiveRecognizerConfiguration { + // (undocumented) + static $kind: string; + applicationId: StringExpression; + // Warning: (ae-forgotten-export) The symbol "DynamicList" needs to be exported by the entry point index.d.ts + dynamicLists: ArrayExpression; + endpoint: StringExpression; + endpointKey: StringExpression; + externalEntityRecognizer: Recognizer; + protected fillRecognizerResultTelemetryProperties(recognizerResult: RecognizerResult, telemetryProperties: { + [key: string]: string; + }, dialogContext: DialogContext): { + [key: string]: string; + }; + // (undocumented) + getConverter(property: keyof LuisAdaptiveRecognizerConfiguration): Converter | ConverterFactory; + logPersonalInformation: BoolExpression; + // Warning: (ae-forgotten-export) The symbol "LuisAdaptivePredictionOptions" needs to be exported by the entry point index.d.ts + predictionOptions: LuisAdaptivePredictionOptions; + recognize(dialogContext: DialogContext, activity: Activity, telemetryProperties?: Record, telemetryMetrics?: Record): Promise; + recognizerOptions(dialogContext: DialogContext): LuisRecognizerOptionsV3; + version: StringExpression; +} + +// @public (undocumented) +export interface LuisAdaptiveRecognizerConfiguration extends RecognizerConfiguration { + // (undocumented) + applicationId?: string | Expression | StringExpression; + // (undocumented) + dynamicLists?: unknown[] | string | Expression | ArrayExpression; + // (undocumented) + endpoint?: string | Expression | StringExpression; + // (undocumented) + endpointKey?: string | Expression | StringExpression; + // (undocumented) + externalEntityRecognizer?: string | Recognizer; + // (undocumented) + logPersonalInformation?: boolean | string | Expression | BoolExpression; + // Warning: (ae-forgotten-export) The symbol "LuisAdaptivePredictionOptionsConfiguration" needs to be exported by the entry point index.d.ts + // + // (undocumented) + predictionOptions?: LuisAdaptivePredictionOptionsConfiguration | LuisAdaptivePredictionOptions; + // (undocumented) + version?: string | Expression | StringExpression; +} + // @public export interface LuisApplication { applicationId: string; @@ -83,6 +185,18 @@ export interface LuisApplication { endpointKey: string; } +// @public (undocumented) +export class LuisBotComponent extends BotComponent { + // (undocumented) + configureServices(services: ServiceCollection, _configuration: Configuration): void; +} + +// @public +export class LuisComponentRegistration extends ComponentRegistration { + constructor(); + getDeclarativeTypes(_resourceExplorer: unknown): ComponentDeclarativeTypes[]; + } + // @public export interface LuisPredictionOptions extends LUISRuntimeModels.PredictionResolveOptionalParams { bingSpellCheckSubscriptionKey?: string; @@ -106,19 +220,21 @@ export class LuisRecognizer implements LuisRecognizerTelemetryClient { }): Promise<{ [key: string]: string; }>; - readonly logPersonalInformation: boolean; + // (undocumented) + get logPersonalInformation(): boolean; protected onRecognizerResults(recognizerResult: RecognizerResult, turnContext: TurnContext, telemetryProperties?: { [key: string]: string; }, telemetryMetrics?: { [key: string]: number; }): Promise; - recognize(context: TurnContext, telemetryProperties?: { - [key: string]: string; - }, telemetryMetrics?: { - [key: string]: number; - }, options?: LuisRecognizerOptionsV2 | LuisRecognizerOptionsV3 | LuisPredictionOptions): Promise; - readonly telemetryClient: BotTelemetryClient; - static topIntent(results: RecognizerResult | undefined, defaultIntent?: string, minScore?: number): string; + recognize(context: DialogContext | TurnContext, telemetryProperties?: Record, telemetryMetrics?: Record, options?: LuisRecognizerOptionsV2 | LuisRecognizerOptionsV3 | LuisPredictionOptions): Promise; + static sortedIntents(result?: RecognizerResult, minScore?: number): Array<{ + intent: string; + score: number; + }>; + // (undocumented) + get telemetryClient(): BotTelemetryClient; + static topIntent(results?: RecognizerResult, defaultIntent?: string, minScore?: number): string; } // @public (undocumented) @@ -130,7 +246,7 @@ export interface LuisRecognizerOptions { // @public (undocumented) export interface LuisRecognizerOptionsV2 extends LuisRecognizerOptions { - apiVersion: "v2"; + apiVersion: 'v2'; bingSpellCheckSubscriptionKey?: string; includeAllIntents?: boolean; includeInstanceData?: boolean; @@ -142,10 +258,11 @@ export interface LuisRecognizerOptionsV2 extends LuisRecognizerOptions { // @public (undocumented) export interface LuisRecognizerOptionsV3 extends LuisRecognizerOptions { - apiVersion: "v3"; + apiVersion: 'v3'; datetimeReference?: string; - dynamicLists?: Array; - externalEntities?: Array; + dynamicLists?: Array; + externalEntities?: Array; + externalEntityRecognizer?: Recognizer; includeAllIntents?: boolean; includeInstanceData?: boolean; log?: boolean; @@ -165,6 +282,34 @@ export interface LuisRecognizerTelemetryClient { readonly telemetryClient: BotTelemetryClient; } +// @public +export class LuisTelemetryConstants { + // (undocumented) + static readonly activityIdProperty = "activityId"; + // (undocumented) + static readonly applicationIdProperty = "applicationId"; + // (undocumented) + static readonly entitiesProperty = "entities"; + // (undocumented) + static readonly fromIdProperty = "fromId"; + // (undocumented) + static readonly intent2Property = "intent2"; + // (undocumented) + static readonly intentProperty = "intent"; + // (undocumented) + static readonly intentScore2Property = "intentScore2"; + // (undocumented) + static readonly intentScoreProperty = "intentScore"; + // (undocumented) + static readonly luisResultEvent = "LuisResult"; + // (undocumented) + static readonly questionProperty = "question"; + // (undocumented) + static readonly sentimentLabelProperty = "sentimentLabel"; + // (undocumented) + static readonly sentimentScoreProperty = "sentimentScore"; +} + // @public export interface NumberWithUnits { number?: number; @@ -178,21 +323,19 @@ export interface OrdinalV2 { } // @public -export class QnAMaker implements QnAMakerTelemetryClient { +export class QnACardBuilder { + static getQnAPromptsCard(result: QnAMakerResult): Partial; + static getSuggestionsCard(suggestionsList: string[], cardTitle: string, cardNoMatchText: string): Partial; +} + +// @public +export class QnAMaker implements QnAMakerClient, QnAMakerTelemetryClient { constructor(endpoint: QnAMakerEndpoint, options?: QnAMakerOptions, telemetryClient?: BotTelemetryClient, logPersonalInformation?: boolean); // @deprecated answer(context: TurnContext): Promise; protected callService(endpoint: QnAMakerEndpoint, question: string, top: number): Promise; - callTrainAsync(feedbackRecords: FeedbackRecords): Promise; - protected fillQnAEvent(qnaResults: QnAMakerResult[], turnContext: TurnContext, telemetryProperties?: { - [key: string]: string; - }, telemetryMetrics?: { - [key: string]: number; - }): Promise<[{ - [key: string]: string; - }, { - [key: string]: number; - }]>; + callTrain(feedbackRecords: FeedbackRecords): Promise; + protected fillQnAEvent(qnaResults: QnAMakerResult[], turnContext: TurnContext, telemetryProperties?: Record, telemetryMetrics?: Record): Promise<[Record, Record]>; // @deprecated generateAnswer(question: string | undefined, top?: number, scoreThreshold?: number): Promise; getAnswers(context: TurnContext, options?: QnAMakerOptions, telemetryProperties?: { @@ -200,22 +343,21 @@ export class QnAMaker implements QnAMakerTelemetryClient { }, telemetryMetrics?: { [key: string]: number; }): Promise; - // Warning: (ae-forgotten-export) The symbol "QnAMakerResults" needs to be exported by the entry point index.d.ts - // - // (undocumented) getAnswersRaw(context: TurnContext, options?: QnAMakerOptions, telemetryProperties?: { [key: string]: string; }, telemetryMetrics?: { [key: string]: number; }): Promise; - getLowScoreVariation(queryResult: QnAMakerResult[]): any[]; - readonly logPersonalInformation: boolean; + getLowScoreVariation(queryResult: QnAMakerResult[]): QnAMakerResult[]; + // (undocumented) + get logPersonalInformation(): boolean; protected onQnaResults(qnaResults: QnAMakerResult[], turnContext: TurnContext, telemetryProperties?: { [key: string]: string; }, telemetryMetrics?: { [key: string]: number; }): Promise; - readonly telemetryClient: BotTelemetryClient; + // (undocumented) + get telemetryClient(): BotTelemetryClient; } // @public (undocumented) @@ -227,12 +369,65 @@ export const QNAMAKER_TRACE_NAME = "QnAMaker"; // @public (undocumented) export const QNAMAKER_TRACE_TYPE = "https://www.qnamaker.ai/schemas/trace"; +// @public (undocumented) +export class QnAMakerBotComponent extends BotComponent { + // (undocumented) + configureServices(services: ServiceCollection, _configuration: Configuration): void; +} + // @public -export class QnAMakerDialog extends WaterfallDialog { - constructor(knowledgeBaseId: string, endpointKey: string, hostName: string, noAnswer?: Activity, threshold?: number, activeLearningCardTitle?: string, cardNoMatchText?: string, top?: number, cardNoMatchResponse?: Activity, strictFilters?: QnAMakerMetadata[], dialogId?: string); +export interface QnAMakerClient { + callTrain(feedbackRecords: FeedbackRecords): Promise; + getAnswers(turnContext: TurnContext, options?: QnAMakerOptions, telemetryProperties?: Record, telemetryMetrics?: Record): Promise; + getAnswersRaw(turnContext: TurnContext, options?: QnAMakerOptions, telemetryProperties?: Record, telemetryMetrics?: Record): Promise; + getLowScoreVariation(queryResult: QnAMakerResult[]): QnAMakerResult[]; +} + +// @public +export const QnAMakerClientKey: unique symbol; + +// @public +export class QnAMakerComponentRegistration extends ComponentRegistration { + constructor(); + getDeclarativeTypes(_resourceExplorer: unknown): ComponentDeclarativeTypes[]; + } + +// Warning: (ae-forgotten-export) The symbol "QnAMakerDialogConfiguration" needs to be exported by the entry point index.d.ts +// +// @public +export class QnAMakerDialog extends WaterfallDialog implements QnAMakerDialogConfiguration { // (undocumented) + static $kind: string; + constructor(knowledgeBaseId?: string, endpointKey?: string, hostname?: string, noAnswer?: Activity, threshold?: number, activeLearningCardTitle?: string, cardNoMatchText?: string, top?: number, cardNoMatchResponse?: Activity, strictFilters?: QnAMakerMetadata[], dialogId?: string, strictFiltersJoinOperator?: JoinOperator); + constructor(knowledgeBaseId?: string, endpointKey?: string, hostname?: string, noAnswer?: Activity, threshold?: number, suggestionsActivityFactory?: QnASuggestionsActivityFactory, cardNoMatchText?: string, top?: number, cardNoMatchResponse?: Activity, strictFilters?: QnAMakerMetadata[], dialogId?: string, strictFiltersJoinOperator?: JoinOperator); + activeLearningCardTitle: StringExpression; beginDialog(dc: DialogContext, options?: object): Promise; - } + cardNoMatchResponse: TemplateInterface, DialogStateManager>; + cardNoMatchText: StringExpression; + continueDialog(dc: DialogContext): Promise; + protected defaultThreshold: number; + protected defaultTopN: number; + protected displayQnAResult(step: WaterfallStepContext): Promise; + endpointKey: StringExpression; + // (undocumented) + getConverter(property: keyof QnAMakerDialogConfiguration): Converter | ConverterFactory; + protected getQnAMakerClient(dc: DialogContext): Promise; + protected getQnAMakerOptions(dc: DialogContext): Promise; + protected getQnAResponseOptions(dc: DialogContext): Promise; + hostname: StringExpression; + isTest: boolean; + knowledgeBaseId: StringExpression; + logPersonalInformation: BoolExpression; + noAnswer: TemplateInterface, DialogStateManager>; + protected onPreBubbleEvent(dc: DialogContext, e: DialogEvent): Promise; + protected options: string; + protected previousQnAId: string; + protected qnAContextData: string; + rankerType: EnumExpression; + strictFilters: ArrayExpression; + threshold: NumberExpression; + top: IntExpression; +} // @public export interface QnAMakerDialogOptions { @@ -243,9 +438,9 @@ export interface QnAMakerDialogOptions { // @public export interface QnAMakerDialogResponseOptions { activeLearningCardTitle: string; - cardNoMatchResponse: Activity; + cardNoMatchResponse: Partial; cardNoMatchText: string; - noAnswer: Activity; + noAnswer: Partial; } // @public @@ -270,14 +465,77 @@ export interface QnAMakerOptions { rankerType?: string; scoreThreshold?: number; strictFilters?: QnAMakerMetadata[]; + strictFiltersJoinOperator?: JoinOperator; timeout?: number; top?: number; } +// @public +export class QnAMakerRecognizer extends Recognizer implements QnAMakerRecognizerConfiguration { + // (undocumented) + static $kind: string; + constructor(hostname?: string, knowledgeBaseId?: string, endpointKey?: string); + context: ObjectExpression; + endpointKey: StringExpression; + protected fillRecognizerResultTelemetryProperties(recognizerResult: RecognizerResult, telemetryProperties: Record, dc: DialogContext): Record; + // (undocumented) + getConverter(property: keyof QnAMakerRecognizerConfiguration): Converter | ConverterFactory; + // @deprecated + protected getQnAMaker(dc: DialogContext): QnAMaker; + protected getQnAMakerClient(dc: DialogContext): QnAMakerClient; + hostname: StringExpression; + includeDialogNameInMetadata: BoolExpression; + isTest: boolean; + knowledgeBaseId: StringExpression; + logPersonalInformation: BoolExpression; + metadata: ArrayExpression; + qnaId: IntExpression; + // (undocumented) + static readonly qnaMatchIntent = "QnAMatch"; + rankerType: StringExpression; + recognize(dc: DialogContext, activity: Activity, telemetryProperties?: { + [key: string]: string; + }, telemetryMetrics?: { + [key: string]: number; + }): Promise; + strictFiltersJoinOperator: JoinOperator; + threshold: NumberExpression; + top: IntExpression; +} + +// @public (undocumented) +export interface QnAMakerRecognizerConfiguration extends RecognizerConfiguration { + // (undocumented) + context?: QnARequestContext | string | Expression | ObjectExpression; + // (undocumented) + endpointKey?: string | Expression | StringExpression; + // (undocumented) + hostname?: string | Expression | StringExpression; + // (undocumented) + includeDialogNameInMetadata?: boolean | string | Expression | BoolExpression; + // (undocumented) + isTest?: boolean; + // (undocumented) + knowledgeBaseId?: string | Expression | StringExpression; + // (undocumented) + logPersonalInformation?: boolean | string | Expression | BoolExpression; + // (undocumented) + metadata?: QnAMakerMetadata[] | string | Expression | ArrayExpression; + // (undocumented) + qnaId?: number | string | Expression | IntExpression; + // (undocumented) + rankerType?: string | Expression | StringExpression; + // (undocumented) + strictFiltersJoinOperator?: JoinOperator; + // (undocumented) + threshold?: number | string | Expression | NumberExpression; + // (undocumented) + top?: number | string | Expression | IntExpression; +} + // @public export interface QnAMakerResult { answer: string; - // Warning: (ae-forgotten-export) The symbol "QnAResponseContext" needs to be exported by the entry point index.d.ts context?: QnAResponseContext; id?: number; metadata?: any; @@ -286,7 +544,13 @@ export interface QnAMakerResult { source?: string; } -// @public (undocumented) +// @public +export interface QnAMakerResults { + activeLearningEnabled?: boolean; + answers?: QnAMakerResult[]; +} + +// @public export interface QnAMakerTelemetryClient { getAnswers(context: TurnContext, options?: QnAMakerOptions, telemetryProperties?: { [key: string]: string; @@ -317,12 +581,30 @@ export interface QnARequestContext { } // @public -export class RankerTypes { - static readonly autoSuggestQuestion: string; - static readonly default: string; - static readonly questionOnly: string; +export interface QnAResponseContext { + // Warning: (ae-forgotten-export) The symbol "QnAMakerPrompt" needs to be exported by the entry point index.d.ts + prompts: QnAMakerPrompt[]; } +// @public +export type QnASuggestionsActivityFactory = (suggestionsList: string[], noMatchesText: string) => Partial; + +// @public +export enum RankerTypes { + autoSuggestQuestion = "AutoSuggestQuestion", + default = "Default", + questionOnly = "QuestionOnly" +} + +// @public +export function validateDynamicList(dynamicList: DynamicList): void; + +// @public +export function validateExternalEntity(entity: ExternalEntity): void; + +// @public +export function validateListElement(element: ListElement): void; + // (No @packageDocumentation comment for this package) diff --git a/libraries/botbuilder-applicationinsights/etc/botbuilder-applicationinsights.api.md b/libraries/botbuilder-applicationinsights/etc/botbuilder-applicationinsights.api.md index b4b9d67460..98dbb63e04 100644 --- a/libraries/botbuilder-applicationinsights/etc/botbuilder-applicationinsights.api.md +++ b/libraries/botbuilder-applicationinsights/etc/botbuilder-applicationinsights.api.md @@ -17,24 +17,17 @@ import { TelemetryPageView } from 'botbuilder-core'; import { TelemetryTrace } from 'botbuilder-core'; import { TurnContext } from 'botbuilder-core'; -// @public (undocumented) +// @public export class ApplicationInsightsTelemetryClient implements BotTelemetryClient, BotPageViewTelemetryClient { + constructor(connectionString: string); constructor(instrumentationKey: string); - // (undocumented) - readonly configuration: appInsights.Configuration; - // (undocumented) - readonly defaultClient: appInsights.TelemetryClient; - // (undocumented) + get configuration(): appInsights.Configuration; + get defaultClient(): appInsights.TelemetryClient; flush(): void; - // (undocumented) trackDependency(telemetry: TelemetryDependency): void; - // (undocumented) trackEvent(telemetry: TelemetryEvent): void; - // (undocumented) trackException(telemetry: TelemetryException): void; - // (undocumented) trackPageView(telemetry: TelemetryPageView): void; - // (undocumented) trackTrace(telemetry: TelemetryTrace): void; } @@ -44,10 +37,11 @@ export const ApplicationInsightsWebserverMiddleware: any; // @public export class TelemetryInitializerMiddleware implements Middleware { constructor(telemetryLoggerMiddleware: TelemetryLoggerMiddleware, logActivityTelemetry?: boolean); - protected appInsightsCorrelationContext: CorrelationContext; - readonly logActivityTelemetry: boolean; + protected set appInsightsCorrelationContext(value: CorrelationContext); + protected get appInsightsCorrelationContext(): CorrelationContext; + get logActivityTelemetry(): boolean; onTurn(context: TurnContext, next: () => Promise): Promise; - readonly telemetryClient: TelemetryLoggerMiddleware; + get telemetryClient(): TelemetryLoggerMiddleware; } diff --git a/libraries/botbuilder-applicationinsights/src/telemetryInitializerMiddleware.ts b/libraries/botbuilder-applicationinsights/src/telemetryInitializerMiddleware.ts index 4407e5f535..7faa7e729e 100644 --- a/libraries/botbuilder-applicationinsights/src/telemetryInitializerMiddleware.ts +++ b/libraries/botbuilder-applicationinsights/src/telemetryInitializerMiddleware.ts @@ -45,9 +45,6 @@ export class TelemetryInitializerMiddleware implements Middleware { return this._telemetryLoggerMiddleware; } - /** - * Sets the correlation context so that a mock context can be passed in for testing purposes. - */ protected set appInsightsCorrelationContext(value: CorrelationContext) { this._correlationContext = value; } diff --git a/libraries/botbuilder-azure-blobs/package.json b/libraries/botbuilder-azure-blobs/package.json index 8462dec7a2..f67ff57213 100644 --- a/libraries/botbuilder-azure-blobs/package.json +++ b/libraries/botbuilder-azure-blobs/package.json @@ -40,8 +40,7 @@ "clean": "rimraf _ts3.4 lib tsconfig.tsbuildinfo", "lint": "eslint . --ext .js,.ts", "postbuild": "downlevel-dts lib _ts3.4/lib --checksum", - "test": "yarn build && nyc mocha --check-leaks tests", - "test:compat": "api-extractor run --verbose" + "test": "yarn build && nyc mocha --check-leaks tests" }, "files": [ "_ts3.4", diff --git a/libraries/botbuilder-azure-queues/package.json b/libraries/botbuilder-azure-queues/package.json index ad6fc200f2..6e5506d1b2 100644 --- a/libraries/botbuilder-azure-queues/package.json +++ b/libraries/botbuilder-azure-queues/package.json @@ -40,8 +40,7 @@ "clean": "rimraf _ts3.4 lib tsconfig.tsbuildinfo", "lint": "eslint . --ext .js,.ts", "postbuild": "downlevel-dts lib _ts3.4/lib", - "test": "yarn build && nyc mocha --check-leaks tests", - "test:compat": "api-extractor run --verbose" + "test": "yarn build && nyc mocha --check-leaks tests" }, "files": [ "_ts3.4", diff --git a/libraries/botbuilder-azure/etc/botbuilder-azure.api.md b/libraries/botbuilder-azure/etc/botbuilder-azure.api.md index 229f6db905..4d34f4f7d4 100644 --- a/libraries/botbuilder-azure/etc/botbuilder-azure.api.md +++ b/libraries/botbuilder-azure/etc/botbuilder-azure.api.md @@ -5,6 +5,7 @@ ```ts import { Activity } from 'botbuilder'; +import type { Agent } from 'http'; import { ConnectionPolicy } from 'documentdb'; import { CosmosClientOptions } from '@azure/cosmos'; import { PagedResult } from 'botbuilder'; @@ -14,7 +15,7 @@ import { StoreItems } from 'botbuilder'; import { TranscriptInfo } from 'botbuilder'; import { TranscriptStore } from 'botbuilder'; -// @public +// @public @deprecated export class AzureBlobTranscriptStore implements TranscriptStore { constructor(settings: BlobStorageSettings); deleteTranscript(channelId: string, conversationId: string): Promise; @@ -23,14 +24,11 @@ export class AzureBlobTranscriptStore implements TranscriptStore { logActivity(activity: Activity): Promise; } -// @public +// @public @deprecated export class BlobStorage implements Storage_2 { constructor(settings: BlobStorageSettings); - // (undocumented) delete(keys: string[]): Promise; - // (undocumented) read(keys: string[]): Promise; - // (undocumented) write(changes: StoreItems): Promise; } @@ -53,23 +51,20 @@ export namespace CosmosDbKeyEscape { // @public export class CosmosDbPartitionedStorage implements Storage_2 { constructor(cosmosDbStorageOptions: CosmosDbPartitionedStorageOptions); - // (undocumented) delete(keys: string[]): Promise; initialize(): Promise; - // (undocumented) read(keys: string[]): Promise; - // (undocumented) write(changes: StoreItems): Promise; } // @public export interface CosmosDbPartitionedStorageOptions { - authKey: string; + authKey?: string; compatibilityMode?: boolean; containerId: string; containerThroughput?: number; cosmosClientOptions?: CosmosClientOptions; - cosmosDbEndpoint: string; + cosmosDbEndpoint?: string; databaseId: string; keySuffix?: string; } @@ -77,16 +72,14 @@ export interface CosmosDbPartitionedStorageOptions { // @public @deprecated export class CosmosDbStorage implements Storage_2 { constructor(settings: CosmosDbStorageSettings, connectionPolicyConfigurator?: (policy: ConnectionPolicy) => void); - // (undocumented) delete(keys: string[]): Promise; - // (undocumented) read(keys: string[]): Promise; - // (undocumented) write(changes: StoreItems): Promise; } // @public @deprecated export interface CosmosDbStorageSettings { + agent?: Agent; authKey: string; collectionId: string; databaseCreationRequestOptions?: RequestOptions; diff --git a/libraries/botbuilder-dialogs-adaptive-testing/package.json b/libraries/botbuilder-dialogs-adaptive-testing/package.json index fee6d3332d..4dd903a6f5 100644 --- a/libraries/botbuilder-dialogs-adaptive-testing/package.json +++ b/libraries/botbuilder-dialogs-adaptive-testing/package.json @@ -9,8 +9,7 @@ "lint": "eslint . --ext .js,.ts", "postbuild": "downlevel-dts lib _ts3.4/lib --checksum", "test": "npm-run-all build test:mocha", - "test:mocha": "mocha tests/*.test.js", - "test:compat": "api-extractor run --verbose" + "test:mocha": "mocha tests/*.test.js" }, "main": "./lib/index.js", "types": "./lib/index.d.ts", diff --git a/libraries/botbuilder-dialogs-declarative/etc/botbuilder-dialogs-declarative.api.md b/libraries/botbuilder-dialogs-declarative/etc/botbuilder-dialogs-declarative.api.md index 3482d744c3..270305e8b9 100644 --- a/libraries/botbuilder-dialogs-declarative/etc/botbuilder-dialogs-declarative.api.md +++ b/libraries/botbuilder-dialogs-declarative/etc/botbuilder-dialogs-declarative.api.md @@ -4,34 +4,36 @@ ```ts +import { Configurable } from 'botbuilder-dialogs'; import { FSWatcher } from 'chokidar'; +import { Newable } from 'botbuilder-stdlib'; -// @public (undocumented) -export class BuilderRegistration { - constructor(name: string, builder: TypeBuilder); - // (undocumented) - builder: TypeBuilder; +// @public +export interface ComponentDeclarativeTypes { // (undocumented) - name: string; + getDeclarativeTypes(resourceExplorer: ResourceExplorer): DeclarativeType[]; } -// @public (undocumented) -export interface ComponentRegistration { +// @public +export interface CustomDeserializer { // (undocumented) - getTypeBuilders(): BuilderRegistration[]; + load(config: C, type: Newable): T; } // @public -export interface Converter { +export interface DeclarativeType> { // (undocumented) - convert(value: any): any; + kind: string; + // (undocumented) + loader?: CustomDeserializer; + // (undocumented) + type: Newable; } -// @public (undocumented) -export class CustomTypeBuilder implements TypeBuilder { - constructor(factory: (config: object) => object); - // (undocumented) - build(config: object): object; +// @public +export class DefaultLoader implements CustomDeserializer> { + constructor(_resourceExplorer: ResourceExplorer); + load(config: Record, type: Newable): Configurable; } // @public @@ -48,15 +50,18 @@ export class FolderResourceProvider extends ResourceProvider { getResources(extension: string): Resource[]; includeSubFolders: boolean; refresh(): void; - readonly watcher: FSWatcher; + get watcher(): FSWatcher; } +// @public +export function isComponentDeclarativeTypes(component: unknown): component is ComponentDeclarativeTypes; + // @public export abstract class Resource { - readonly fullName: string; + get fullName(): string; // (undocumented) protected _fullname: string; - readonly id: string; + get id(): string; // (undocumented) protected _id: string; abstract readText(): string; @@ -74,50 +79,46 @@ export enum ResourceChangeEvent { // @public export class ResourceExplorer { - constructor(providers?: ResourceProvider[]); - addComponent(component: ComponentRegistration): ResourceExplorer; + constructor(providers: ResourceProvider[]); + constructor(options?: ResourceExplorerOptions); addFolder(folder: string, includeSubFolders?: boolean, monitorChanges?: boolean): ResourceExplorer; addFolders(folder: string, ignoreFolders?: string[], monitorChanges?: boolean): ResourceExplorer; addResourceProvider(resourceProvider: ResourceProvider): ResourceExplorer; addResourceType(type: string): void; - buildType(config: object): object; - changed: (event: ResourceChangeEvent, resources: Resource[]) => void; + buildType(kind: string, config: C): T; + get changed(): (event: ResourceChangeEvent, resources: Resource[]) => void; + set changed(callback: (event: ResourceChangeEvent, resources: Resource[]) => void); getResource(id: string): Resource; getResources(fileExtension: string): Resource[]; - loadType(resource: string | Resource): object; - // (undocumented) + loadType(resourceId: string): T; + loadType(resource: Resource): T; protected onChanged(event: ResourceChangeEvent, resources: Resource[]): void; refresh(): void; + registerType(kind: string, type: Newable, loader?: CustomDeserializer>): ResourceExplorer; readonly resourceProviders: ResourceProvider[]; readonly resourceTypes: Set; + } + +// @public +export interface ResourceExplorerOptions { + allowCycles?: boolean; + declarativeTypes?: ComponentDeclarativeTypes[]; + providers?: ResourceProvider[]; } // @public export abstract class ResourceProvider { constructor(resourceExplorer: ResourceExplorer); - changed: (event: ResourceChangeEvent, resources: Resource[]) => void; + get changed(): (event: ResourceChangeEvent, resources: Resource[]) => void; + set changed(callback: (event: ResourceChangeEvent, resources: Resource[]) => void); abstract getResource(id: string): Resource; abstract getResources(extension: string): Resource[]; - readonly id: string; + get id(): string; // (undocumented) protected _id: string; - // (undocumented) protected onChanged(event: ResourceChangeEvent, resources: Resource[]): void; abstract refresh(): void; - readonly resourceExplorer: ResourceExplorer; - } - -// @public -export interface TypeBuilder { - // (undocumented) - build(config: object): object; -} - -// @public -export class TypeFactory { - // (undocumented) - build(name: string, config: object): object; - register(name: string, builder?: TypeBuilder): void; + get resourceExplorer(): ResourceExplorer; } diff --git a/libraries/botbuilder-dialogs-declarative/src/resources/resourceExplorer.ts b/libraries/botbuilder-dialogs-declarative/src/resources/resourceExplorer.ts index 15e39acc71..fd55a011f6 100644 --- a/libraries/botbuilder-dialogs-declarative/src/resources/resourceExplorer.ts +++ b/libraries/botbuilder-dialogs-declarative/src/resources/resourceExplorer.ts @@ -69,6 +69,10 @@ export class ResourceExplorer { /** * Event which fires when a resource is changed. */ + public get changed(): (event: ResourceChangeEvent, resources: Resource[]) => void { + return; + } + public set changed(callback: (event: ResourceChangeEvent, resources: Resource[]) => void) { this._eventEmitter.on(ResourceChangeEvent.added, (resources: Resource[]): void => { callback(ResourceChangeEvent.added, resources); diff --git a/libraries/botbuilder-dialogs-declarative/src/resources/resourceProvider.ts b/libraries/botbuilder-dialogs-declarative/src/resources/resourceProvider.ts index c868b2f9e4..3028a4e7ad 100644 --- a/libraries/botbuilder-dialogs-declarative/src/resources/resourceProvider.ts +++ b/libraries/botbuilder-dialogs-declarative/src/resources/resourceProvider.ts @@ -42,6 +42,10 @@ export abstract class ResourceProvider { * Event which is fired if any resource managed by the resource provider detects changes to the underlining resource. * @param callback Callback function to be called when an event fired. */ + public get changed(): (event: ResourceChangeEvent, resources: Resource[]) => void { + return; + } + public set changed(callback: (event: ResourceChangeEvent, resources: Resource[]) => void) { this._eventEmitter.on(ResourceChangeEvent.added, (resources: Resource[]): void => { callback(ResourceChangeEvent.added, resources); diff --git a/libraries/botbuilder-dialogs/etc/botbuilder-dialogs.api.md b/libraries/botbuilder-dialogs/etc/botbuilder-dialogs.api.md index 68de127419..15c4a7be31 100644 --- a/libraries/botbuilder-dialogs/etc/botbuilder-dialogs.api.md +++ b/libraries/botbuilder-dialogs/etc/botbuilder-dialogs.api.md @@ -6,13 +6,17 @@ import { Activity } from 'botbuilder-core'; import { Attachment } from 'botbuilder-core'; +import { BotComponent } from 'botbuilder-core'; import { BotFrameworkClient } from 'botbuilder-core'; import { BotFrameworkSkill } from 'botbuilder-core'; import { BotState } from 'botbuilder-core'; import { BotTelemetryClient } from 'botbuilder-core'; import { CardAction } from 'botbuilder-core'; +import { Configuration } from 'botbuilder-dialogs-adaptive-runtime-core'; import { ConversationState } from 'botbuilder-core'; import { CoreAppCredentials } from 'botbuilder-core'; +import { RecognizerResult } from 'botbuilder-core'; +import { ServiceCollection } from 'botbuilder-dialogs-adaptive-runtime-core'; import { SkillConversationIdFactoryBase } from 'botbuilder-core'; import { StatePropertyAccessor } from 'botbuilder-core'; import { TokenResponse } from 'botbuilder-core'; @@ -23,24 +27,17 @@ import { UserState } from 'botbuilder-core'; // @public export class ActivityPrompt extends Dialog { constructor(dialogId: string, validator: PromptValidator); - // (undocumented) beginDialog(dc: DialogContext, options: PromptOptions): Promise; - // (undocumented) continueDialog(dc: DialogContext): Promise; - // (undocumented) protected onPrompt(context: TurnContext, state: object, options: PromptOptions, isRetry: boolean): Promise; - // (undocumented) protected onRecognize(context: TurnContext, state: object, options: PromptOptions): Promise>; - // (undocumented) repromptDialog(context: TurnContext, instance: DialogInstance): Promise; - // (undocumented) resumeDialog(dc: DialogContext, reason: DialogReason, result?: any): Promise; } // @public export class AliasPathResolver implements PathResolver { constructor(alias: string, prefix: string, postfix?: string); - // (undocumented) transformPath(path: string): string; } @@ -52,16 +49,13 @@ export class AtAtPathResolver extends AliasPathResolver { // @public export class AtPathResolver extends AliasPathResolver { constructor(); - // (undocumented) transformPath(path: string): string; } // @public export class AttachmentPrompt extends Prompt { constructor(dialogId: string, validator?: PromptValidator); - // (undocumented) protected onPrompt(context: TurnContext, state: any, options: PromptOptions, isRetry: boolean): Promise; - // (undocumented) protected onRecognize(context: TurnContext, state: any, options: PromptOptions): Promise>; } @@ -73,12 +67,9 @@ export interface BeginSkillDialogOptions { // @public export class BotStateMemoryScope extends MemoryScope { constructor(name: string); - // (undocumented) delete(dc: DialogContext): Promise; getMemory(dc: DialogContext): object; - // (undocumented) load(dc: DialogContext, force?: boolean): Promise; - // (undocumented) saveChanges(dc: DialogContext, force?: boolean): Promise; setMemory(dc: DialogContext, memory: object): void; // (undocumented) @@ -95,7 +86,6 @@ export interface Choice { // @public export class ChoiceFactory { static forChannel(channelOrContext: string | TurnContext, choices: (string | Choice)[], text?: string, speak?: string, options?: ChoiceFactoryOptions): Partial; - // (undocumented) static heroCard(choices?: (string | Choice)[], text?: string, speak?: string): Activity; static inline(choices: (string | Choice)[], text?: string, speak?: string, options?: ChoiceFactoryOptions): Partial; static list(choices: (string | Choice)[], text?: string, speak?: string, options?: ChoiceFactoryOptions): Partial; @@ -117,9 +107,7 @@ export class ChoicePrompt extends Prompt { constructor(dialogId: string, validator?: PromptValidator, defaultLocale?: string, choiceDefaults?: ChoiceDefaultsChoicePrompt); choiceOptions: ChoiceFactoryOptions | undefined; defaultLocale: string | undefined; - // (undocumented) protected onPrompt(context: TurnContext, state: any, options: PromptOptions, isRetry: boolean): Promise; - // (undocumented) protected onRecognize(context: TurnContext, state: any, options: PromptOptions): Promise>; recognizerOptions: FindChoicesOptions | undefined; style: ListStyle; @@ -128,7 +116,6 @@ export class ChoicePrompt extends Prompt { // @public export class ClassMemoryScope extends MemoryScope { constructor(name?: string); - // (undocumented) getMemory(dc: DialogContext): object; protected onFindDialog(dc: DialogContext): Dialog; } @@ -136,28 +123,37 @@ export class ClassMemoryScope extends MemoryScope { // @public export class ComponentDialog extends DialogContainer { addDialog(dialog: Dialog): this; - // (undocumented) beginDialog(outerDC: DialogContext, options?: O): Promise; - // (undocumented) continueDialog(outerDC: DialogContext): Promise; createChildContext(outerDC: DialogContext): DialogContext; protected endComponent(outerDC: DialogContext, result: any): Promise; - // (undocumented) endDialog(context: TurnContext, instance: DialogInstance, reason: DialogReason): Promise; protected initialDialogId: string; protected onBeginDialog(innerDC: DialogContext, options?: O): Promise; protected onContinueDialog(innerDC: DialogContext): Promise; protected onEndDialog(context: TurnContext, instance: DialogInstance, reason: DialogReason): Promise; protected onRepromptDialog(context: TurnContext, instance: DialogInstance): Promise; - // (undocumented) repromptDialog(context: TurnContext, instance: DialogInstance): Promise; - // (undocumented) resumeDialog(outerDC: DialogContext, reason: DialogReason, result?: any): Promise; } +// @public +export interface ComponentMemoryScopes { + // (undocumented) + getMemoryScopes(): MemoryScope[]; +} + +// @public +export interface ComponentPathResolvers { + // (undocumented) + getPathResolvers(): PathResolver[]; +} + // @public export abstract class Configurable { - configure(config: object): this; + configure(config: Record): this; + // (undocumented) + getConverter(_property: string): Converter | ConverterFactory; } // @public @@ -167,9 +163,7 @@ export class ConfirmPrompt extends Prompt { choiceOptions: ChoiceFactoryOptions | undefined; confirmChoices: (string | Choice)[] | undefined; defaultLocale: string | undefined; - // (undocumented) protected onPrompt(context: TurnContext, state: any, options: PromptOptions, isRetry: boolean): Promise; - // (undocumented) protected onRecognize(context: TurnContext, state: any, options: PromptOptions): Promise>; style: ListStyle; } @@ -181,13 +175,22 @@ export class ConversationMemoryScope extends BotStateMemoryScope { protected stateKey: string; } +// @public +export interface Converter { + // (undocumented) + convert(value: From | To): To; +} + +// @public (undocumented) +export type ConverterFactory = { + new (...args: unknown[]): Converter; +}; + // @public export class DateTimePrompt extends Prompt { constructor(dialogId: string, validator?: PromptValidator, defaultLocale?: string); defaultLocale: string | undefined; - // (undocumented) protected onPrompt(context: TurnContext, state: any, options: PromptOptions, isRetry: boolean): Promise; - // (undocumented) protected onRecognize(context: TurnContext, state: any, options: PromptOptions): Promise>; } @@ -209,15 +212,16 @@ export abstract class Dialog extends Configurable { endDialog(context: TurnContext, instance: DialogInstance, reason: DialogReason): Promise; static EndOfTurn: DialogTurnResult; getVersion(): string; - id: string; + get id(): string; + set id(value: string); protected onComputeId(): string; - // (undocumented) onDialogEvent(dc: DialogContext, e: DialogEvent): Promise; protected onPostBubbleEvent(dc: DialogContext, e: DialogEvent): Promise; protected onPreBubbleEvent(dc: DialogContext, e: DialogEvent): Promise; repromptDialog(context: TurnContext, instance: DialogInstance): Promise; resumeDialog(dc: DialogContext, reason: DialogReason, result?: any): Promise; - telemetryClient: BotTelemetryClient; + get telemetryClient(): BotTelemetryClient; + set telemetryClient(client: BotTelemetryClient); protected _telemetryClient: BotTelemetryClient; } @@ -234,72 +238,63 @@ export interface DialogConfiguration { telemetryClient?: BotTelemetryClient; } -// @public (undocumented) -export interface DialogConfiguration { - id?: string; - telemetryClient?: BotTelemetryClient; -} - -// @public (undocumented) -export interface DialogConfiguration { - id?: string; - telemetryClient?: BotTelemetryClient; -} - -// @public (undocumented) +// @public export abstract class DialogContainer extends Dialog { protected checkForVersionChange(dc: DialogContext): Promise; abstract createChildContext(dc: DialogContext): DialogContext | undefined; readonly dialogs: DialogSet; findDialog(dialogId: string): Dialog | undefined; protected getInternalVersion(): string; - telemetryClient: BotTelemetryClient; + onDialogEvent(dc: DialogContext, e: DialogEvent): Promise; + set telemetryClient(client: BotTelemetryClient); + get telemetryClient(): BotTelemetryClient; } // @public export class DialogContext { - constructor(dialogContext: DialogContext); constructor(dialogs: DialogSet, contextOrDC: TurnContext, state: DialogState); constructor(dialogs: DialogSet, contextOrDC: DialogContext, state: DialogState); - readonly activeDialog: DialogInstance | undefined; + get activeDialog(): DialogInstance | undefined; beginDialog(dialogId: string, options?: object): Promise; cancelAllDialogs(cancelParents?: boolean, eventName?: string, eventValue?: any): Promise; - readonly child: DialogContext | undefined; + get child(): DialogContext | undefined; context: TurnContext; continueDialog(): Promise; - readonly dialogManager: DialogManager; + get dialogManager(): DialogManager; dialogs: DialogSet; emitEvent(name: string, value?: any, bubble?: boolean, fromLeaf?: boolean): Promise; endDialog(result?: any): Promise; findDialog(dialogId: string): Dialog | undefined; + getLocale(): string; parent: DialogContext | undefined; prompt(dialogId: string, promptOrOptions: string | Partial | PromptOptions): Promise; - // (undocumented) prompt(dialogId: string, promptOrOptions: string | Partial | PromptOptions, choices: (string | Choice)[]): Promise; replaceDialog(dialogId: string, options?: object): Promise; repromptDialog(): Promise; + services: TurnContextStateCollection; stack: DialogInstance[]; - // (undocumented) state: DialogStateManager; } -// @public (undocumented) -export interface DialogDependencies { - getDependencies(): Dialog[]; +// @public +export class DialogContextError extends Error { + constructor(source: Error | string, dialogContext: DialogContext); + readonly dialogContext: { + activeDialog?: string; + parent?: string; + stack: DialogInstance[]; + }; } -// @public (undocumented) -export interface DialogEvent { - bubble: boolean; - name: string; - value?: any; +// @public +export class DialogContextMemoryScope extends MemoryScope { + constructor(); + getMemory(dc: DialogContext): Record<'stack' | 'activeDialog' | 'parent', unknown>; } // @public (undocumented) -export interface DialogEvent { - bubble: boolean; - name: string; - value?: any; +export interface DialogDependencies { + getDependencies(): Dialog[]; } // @public (undocumented) @@ -326,17 +321,17 @@ export interface DialogInstance { version?: string; } -// @public (undocumented) +// @public export class DialogManager extends Configurable { constructor(rootDialog?: Dialog, dialogStateProperty?: string); - // (undocumented) configure(config: Partial): this; conversationState: ConversationState; + dialogs: DialogSet; expireAfter?: number; - readonly initialTurnState: TurnContextStateCollection; - // (undocumented) + get initialTurnState(): TurnContextStateCollection; onTurn(context: TurnContext): Promise; - rootDialog: Dialog; + set rootDialog(value: Dialog); + get rootDialog(): Dialog; stateConfiguration?: DialogStateManagerConfiguration; userState?: UserState; } @@ -359,14 +354,14 @@ export interface DialogManagerResult { // @public export class DialogMemoryScope extends MemoryScope { constructor(); - // (undocumented) getMemory(dc: DialogContext): object; - // (undocumented) setMemory(dc: DialogContext, memory: object): void; } // @public export class DialogPath { + // (undocumented) + static readonly defaultOperation = "dialog.defaultOperation"; // (undocumented) static readonly eventCounter = "dialog.eventCounter"; // (undocumented) @@ -393,14 +388,22 @@ export enum DialogReason { replaceCalled = "replaceCalled" } +// @public (undocumented) +export class DialogsBotComponent extends BotComponent { + // (undocumented) + configureServices(services: ServiceCollection, configuration: Configuration): void; +} + // @public export class DialogSet { constructor(dialogState?: StatePropertyAccessor); add(dialog: T): this; createContext(context: TurnContext): Promise; find(dialogId: string): Dialog | undefined; + getDialogs(): Dialog[]; getVersion(): string; - telemetryClient: BotTelemetryClient; + get telemetryClient(): BotTelemetryClient; + set telemetryClient(client: BotTelemetryClient); } // @public @@ -413,8 +416,6 @@ export class DialogStateManager { constructor(dc: DialogContext, configuration?: DialogStateManagerConfiguration); anyPathChanged(counter: number, paths: string[]): boolean; configuration: DialogStateManagerConfiguration; - // (undocumented) - static createStandardConfiguration(): DialogStateManagerConfiguration; deleteScopesMemory(name: string): Promise; deleteValue(pathExpression: string): void; getMemorySnapshot(): object; @@ -425,7 +426,6 @@ export class DialogStateManager { setValue(pathExpression: string, value: any): void; trackPaths(paths: string[]): string[]; transformPath(pathExpression: string): string; - // (undocumented) version(): string; } @@ -444,8 +444,14 @@ export interface DialogTurnResult { // @public export class DialogTurnStateConstants { + // (undocumented) + static configuration: symbol; // (undocumented) static dialogManager: symbol; + // (undocumented) + static queueStorage: symbol; + // (undocumented) + static telemetryClient: symbol; } // @public @@ -513,6 +519,12 @@ export class HashPathResolver extends AliasPathResolver { // @public (undocumented) export function hasMessageFeed(channelId: string): boolean; +// @public +export function isComponentMemoryScopes(component: unknown): component is ComponentMemoryScopes; + +// @public +export function isComponentPathResolvers(component: unknown): component is ComponentPathResolvers; + // @public export enum ListStyle { auto = 1, @@ -550,27 +562,25 @@ export interface ModelResult = {}> { // @public export class NumberPrompt extends Prompt { constructor(dialogId: string, validator?: PromptValidator, defaultLocale?: string); - defaultLocale: string | undefined; - // (undocumented) - protected onPrompt(context: TurnContext, state: any, options: PromptOptions, isRetry: boolean): Promise; - // (undocumented) - protected onRecognize(context: TurnContext, state: any, options: PromptOptions): Promise>; + defaultLocale?: string; + protected onPrompt(context: TurnContext, state: unknown, options: PromptOptions, isRetry: boolean): Promise; + protected onRecognize(context: TurnContext, state: unknown, options: PromptOptions): Promise>; } // @public export class OAuthPrompt extends Dialog { constructor(dialogId: string, settings: OAuthPromptSettings, validator?: PromptValidator); - // (undocumented) beginDialog(dc: DialogContext, options?: PromptOptions): Promise; - // (undocumented) continueDialog(dc: DialogContext): Promise; getUserToken(context: TurnContext, code?: string): Promise; + static sendOAuthCard(settings: OAuthPromptSettings, turnContext: TurnContext, prompt?: string | Partial): Promise; signOutUser(context: TurnContext): Promise; } // @public export interface OAuthPromptSettings { connectionName: string; + endOnInvalidMessage?: boolean; oAuthAppCredentials?: CoreAppCredentials; text?: string; timeout?: number; @@ -591,17 +601,12 @@ export class PercentPathResolver extends AliasPathResolver { export abstract class Prompt extends Dialog { protected constructor(dialogId: string, validator?: PromptValidator); protected appendChoices(prompt: string | Partial, channelId: string, choices: (string | Choice)[], style: ListStyle, options?: ChoiceFactoryOptions): Partial; - // (undocumented) beginDialog(dc: DialogContext, options: PromptOptions): Promise; - // (undocumented) continueDialog(dc: DialogContext): Promise; - // (undocumented) protected onPreBubbleEvent(dc: DialogContext, event: DialogEvent): Promise; protected abstract onPrompt(context: TurnContext, state: object, options: PromptOptions, isRetry: boolean): Promise; protected abstract onRecognize(context: TurnContext, state: object, options: PromptOptions): Promise>; - // (undocumented) repromptDialog(context: TurnContext, instance: DialogInstance): Promise; - // (undocumented) resumeDialog(dc: DialogContext, reason: DialogReason, result?: any): Promise; } @@ -670,7 +675,27 @@ export interface PromptValidatorContext { // @public export function recognizeChoices(utterance: string, choices: (string | Choice)[], options?: FindChoicesOptions): ModelResult[]; +// @public +export class Recognizer extends Configurable implements RecognizerConfiguration { + protected createChooseIntentResult(recognizerResults: Record): RecognizerResult; + protected fillRecognizerResultTelemetryProperties(recognizerResult: RecognizerResult, telemetryProperties: Record, dialogContext?: DialogContext): Record; + id: string; + recognize(dialogContext: DialogContext, activity: Partial, telemetryProperties?: Record, telemetryMetrics?: Record): Promise; + // (undocumented) + protected stringifyAdditionalPropertiesOfRecognizerResult(recognizerResult: RecognizerResult): string; + telemetryClient: BotTelemetryClient; + protected trackRecognizerResult(dialogContext: DialogContext, eventName: string, telemetryProperties?: Record, telemetryMetrics?: Record): void; +} + // @public (undocumented) +export interface RecognizerConfiguration { + // (undocumented) + id?: string; + // (undocumented) + telemetryClient?: BotTelemetryClient; +} + +// @public export function runDialog(dialog: Dialog, context: TurnContext, accessor: StatePropertyAccessor): Promise; // @public @@ -679,6 +704,7 @@ export class ScopePath { static readonly conversation = "conversation"; static readonly dialog = "dialog"; static readonly dialogClass = "dialogClass"; + static readonly dialogContext = "dialogContext"; static readonly settings = "settings"; static readonly this = "this"; static readonly turn = "turn"; @@ -687,26 +713,23 @@ export class ScopePath { // @public export class SettingsMemoryScope extends MemoryScope { - constructor(); + constructor(initialSettings?: Record); + getMemory(dc: DialogContext): Record; // (undocumented) - getMemory(dc: DialogContext): object; + load(dc: DialogContext): Promise; + protected static loadSettings(configuration: Record): Record; } -// @public (undocumented) +// @public export class SkillDialog extends Dialog> { constructor(dialogOptions: SkillDialogOptions, dialogId?: string); - // (undocumented) beginDialog(dc: DialogContext, options: BeginSkillDialogOptions): Promise; - // (undocumented) continueDialog(dc: DialogContext): Promise; // (undocumented) protected dialogOptions: SkillDialogOptions; - // (undocumented) endDialog(context: TurnContext, instance: DialogInstance, reason: DialogReason): Promise; protected onValidateActivity(activity: Activity): boolean; - // (undocumented) repromptDialog(context: TurnContext, instance: DialogInstance): Promise; - // (undocumented) resumeDialog(dc: DialogContext, reason: DialogReason, result?: any): Promise; } @@ -735,23 +758,23 @@ export function supportsCardActions(channelId: string, buttonCnt?: number): bool // @public (undocumented) export function supportsSuggestedActions(channelId: string, buttonCnt?: number): boolean; +// @public +export interface TemplateInterface> { + bind(dialogContext: DialogContext, data?: D): Promise; +} + // @public export class TextPrompt extends Prompt { constructor(dialogId?: string, validator?: PromptValidator); - // (undocumented) protected onPreBubbleEvent(dc: DialogContext, event: DialogEvent): Promise; - // (undocumented) protected onPrompt(context: TurnContext, state: any, options: PromptOptions, isRetry: boolean): Promise; - // (undocumented) protected onRecognize(context: TurnContext, state: any, options: PromptOptions): Promise>; } // @public export class ThisMemoryScope extends MemoryScope { constructor(); - // (undocumented) getMemory(dc: DialogContext): object; - // (undocumented) setMemory(dc: DialogContext, memory: object): void; } @@ -774,9 +797,7 @@ export type TokenizerFunction = (text: string, locale?: string) => Token[]; // @public export class TurnMemoryScope extends MemoryScope { constructor(); - // (undocumented) getMemory(dc: DialogContext): object; - // (undocumented) setMemory(dc: DialogContext, memory: object): void; } @@ -819,17 +840,12 @@ export class UserMemoryScope extends BotStateMemoryScope { export class WaterfallDialog extends Dialog { constructor(dialogId: string, steps?: WaterfallStep[]); addStep(step: WaterfallStep): this; - // (undocumented) beginDialog(dc: DialogContext, options?: O): Promise; - // (undocumented) continueDialog(dc: DialogContext): Promise; endDialog(context: TurnContext, instance: DialogInstance, reason: DialogReason): Promise; - // (undocumented) getVersion(): string; protected onStep(step: WaterfallStepContext): Promise; - // (undocumented) resumeDialog(dc: DialogContext, reason: DialogReason, result?: any): Promise; - // (undocumented) protected runStep(dc: DialogContext, index: number, reason: DialogReason, result?: any): Promise; } @@ -839,12 +855,12 @@ export type WaterfallStep = (step: WaterfallStepContext extends DialogContext { constructor(dc: DialogContext, info: WaterfallStepInfo); - readonly index: number; + get index(): number; next(result?: any): Promise; - readonly options: O; - readonly reason: DialogReason; - readonly result: any; - readonly values: object; + get options(): O; + get reason(): DialogReason; + get result(): any; + get values(): object; } // @public diff --git a/libraries/botbuilder-dialogs/src/dialog.ts b/libraries/botbuilder-dialogs/src/dialog.ts index d9e40a8a2d..47b7e44d34 100644 --- a/libraries/botbuilder-dialogs/src/dialog.ts +++ b/libraries/botbuilder-dialogs/src/dialog.ts @@ -268,9 +268,6 @@ export abstract class Dialog extends Configurable { return this._id; } - /** - * Sets the unique ID of the dialog. - */ public set id(value: string) { this._id = value; } @@ -282,9 +279,6 @@ export abstract class Dialog extends Configurable { return this._telemetryClient; } - /** - * Sets the telemetry client for this dialog. - */ public set telemetryClient(client: BotTelemetryClient) { this._telemetryClient = client ? client : new NullTelemetryClient(); } diff --git a/libraries/botbuilder-dialogs/src/dialogContainer.ts b/libraries/botbuilder-dialogs/src/dialogContainer.ts index 60150bdc7d..62962b60ca 100644 --- a/libraries/botbuilder-dialogs/src/dialogContainer.ts +++ b/libraries/botbuilder-dialogs/src/dialogContainer.ts @@ -91,10 +91,6 @@ export abstract class DialogContainer extends Dialog { } } - /** - * Set the telemetry client, and also apply it to all child dialogs. - * Future dialogs added to the component will also inherit this client. - */ public set telemetryClient(client: BotTelemetryClient) { this._telemetryClient = client ?? new NullTelemetryClient(); if (this.dialogs.telemetryClient !== this._telemetryClient) { diff --git a/libraries/botbuilder-dialogs/src/dialogManager.ts b/libraries/botbuilder-dialogs/src/dialogManager.ts index e275084ad8..c5e65f6798 100644 --- a/libraries/botbuilder-dialogs/src/dialogManager.ts +++ b/libraries/botbuilder-dialogs/src/dialogManager.ts @@ -99,9 +99,6 @@ export class DialogManager extends Configurable { return this._initialTurnState; } - /** - * Root dialog to start from [onTurn()](#onturn) method. - */ public set rootDialog(value: Dialog) { this.dialogs = new DialogSet(); if (value) { diff --git a/libraries/botbuilder-dialogs/src/dialogSet.ts b/libraries/botbuilder-dialogs/src/dialogSet.ts index 20e96d205e..35927be392 100644 --- a/libraries/botbuilder-dialogs/src/dialogSet.ts +++ b/libraries/botbuilder-dialogs/src/dialogSet.ts @@ -209,10 +209,6 @@ export class DialogSet { return this._telemetryClient; } - /** - * Set the telemetry client for this dialog set and apply it to all current dialogs. - * Future dialogs added to the set will also inherit this client. - */ public set telemetryClient(client: BotTelemetryClient) { this._telemetryClient = client ?? new NullTelemetryClient(); Object.values(this.dialogs).forEach((dialog) => (dialog.telemetryClient = this._telemetryClient)); diff --git a/libraries/botbuilder-testing/etc/botbuilder-testing.api.md b/libraries/botbuilder-testing/etc/botbuilder-testing.api.md index c2a4a92160..818241d133 100644 --- a/libraries/botbuilder-testing/etc/botbuilder-testing.api.md +++ b/libraries/botbuilder-testing/etc/botbuilder-testing.api.md @@ -15,10 +15,10 @@ import { TurnContext } from 'botbuilder-core'; // @public export class DialogTestClient { - constructor(channelId: string, targetDialog: Dialog, initialDialogOptions?: any, middlewares?: Middleware[], conversationState?: ConversationState); - constructor(testAdapter: TestAdapter, targetDialog: Dialog, initialDialogOptions?: any, middlewares?: Middleware[], conversationState?: ConversationState); + constructor(channelId: string, targetDialog: Dialog, initialDialogOptions?: unknown, middlewares?: Middleware[], conversationState?: ConversationState); + constructor(testAdapter: TestAdapter, targetDialog: Dialog, initialDialogOptions?: unknown, middlewares?: Middleware[], conversationState?: ConversationState); conversationState: ConversationState; - readonly dialogContext: DialogContext; + get dialogContext(): DialogContext; dialogTurnResult: DialogTurnResult; getNextReply(): Partial; sendActivity(activity: Partial | string): Promise; @@ -26,13 +26,15 @@ export class DialogTestClient { // @public export class DialogTestLogger implements Middleware { - constructor(logger?: { - log: (any: any) => void; - }); - // (undocumented) + constructor(logger?: Logger); onTurn(context: TurnContext, next: () => Promise): Promise; } +// @public +export interface Logger { + log: (...args: unknown[]) => void; +} + // (No @packageDocumentation comment for this package) diff --git a/libraries/botbuilder/etc/botbuilder.api.md b/libraries/botbuilder/etc/botbuilder.api.md index 14a4da2da9..2927b1a20c 100644 --- a/libraries/botbuilder/etc/botbuilder.api.md +++ b/libraries/botbuilder/etc/botbuilder.api.md @@ -5,7 +5,6 @@ ```ts import { Activity } from 'botbuilder-core'; -import { Activity as Activity_2 } from 'botframework-schema'; import { ActivityHandler } from 'botbuilder-core'; import { ActivityHandlerBase } from 'botbuilder-core'; import { AppBasedLinkQuery } from 'botbuilder-core'; @@ -21,7 +20,7 @@ import { ChannelInfo } from 'botbuilder-core'; import { ClaimsIdentity } from 'botframework-connector'; import { ConnectorClient } from 'botframework-connector'; import { ConnectorClientOptions } from 'botframework-connector'; -import { ConversationAccount } from 'botframework-schema'; +import { ConversationAccount } from 'botbuilder-core'; import { ConversationParameters } from 'botbuilder-core'; import { ConversationReference } from 'botbuilder-core'; import { ConversationResourceResponse } from 'botbuilder-core'; @@ -30,7 +29,6 @@ import { ConversationState } from 'botbuilder-core'; import { CoreAppCredentials } from 'botbuilder-core'; import { ExtendedUserTokenProvider } from 'botbuilder-core'; import { FileConsentCardResponse } from 'botbuilder-core'; -import { HealthCheckResponse } from 'botbuilder-core'; import { HttpClient } from '@azure/ms-rest-js'; import { HttpOperationResponse } from '@azure/ms-rest-js'; import { ICredentialProvider } from 'botframework-connector'; @@ -58,35 +56,41 @@ import { SkillConversationIdFactoryBase } from 'botbuilder-core'; import { StatusCodes } from 'botbuilder-core'; import { Storage as Storage_2 } from 'botbuilder-core'; import { StreamingResponse } from 'botframework-streaming'; +import { TabRequest } from 'botbuilder-core'; +import { TabResponse } from 'botbuilder-core'; +import { TabSubmit } from 'botbuilder-core'; import { TaskModuleRequest } from 'botbuilder-core'; import { TaskModuleResponse } from 'botbuilder-core'; import { TeamDetails } from 'botbuilder-core'; import { TeamInfo } from 'botbuilder-core'; import { TeamsChannelAccount } from 'botbuilder-core'; +import { TeamsMeetingInfo } from 'botbuilder-core'; +import { TeamsMeetingParticipant } from 'botbuilder-core'; import { TeamsPagedMembersResult } from 'botbuilder-core'; +import { TenantInfo } from 'botbuilder-core'; import { TokenApiClient } from 'botframework-connector'; import { TokenExchangeRequest } from 'botframework-connector'; import { TokenResponse } from 'botbuilder-core'; import { TokenStatus } from 'botframework-connector'; import { Transcript } from 'botbuilder-core'; -import { Transcript as Transcript_2 } from 'botframework-schema'; import { TranscriptInfo } from 'botbuilder-core'; import { TranscriptStore } from 'botbuilder-core'; import { TurnContext } from 'botbuilder-core'; import { UserState } from 'botbuilder-core'; import { WebResource } from '@azure/ms-rest-js'; +// Warning: (ae-forgotten-export) The symbol "BotFrameworkHttpAdapter" needs to be exported by the entry point index.d.ts // Warning: (ae-forgotten-export) The symbol "ConnectorClientBuilder" needs to be exported by the entry point index.d.ts // // @public -export class BotFrameworkAdapter extends BotAdapter implements ConnectorClientBuilder, ExtendedUserTokenProvider, RequestHandler { +export class BotFrameworkAdapter extends BotAdapter implements BotFrameworkHttpAdapter, ConnectorClientBuilder, ExtendedUserTokenProvider, RequestHandler { constructor(settings?: Partial); protected authenticateRequest(request: Partial, authHeader: string): Promise; // (undocumented) protected buildCredentials(appId: string, oAuthScope?: string): Promise; protected checkEmulatingOAuthCards(context: TurnContext): void; // (undocumented) - readonly ConnectorClientKey: Symbol; + readonly ConnectorClientKey: symbol; continueConversation(reference: Partial, logic: (context: TurnContext) => Promise): Promise; // (undocumented) continueConversation(reference: Partial, oAuthScope: string, logic: (context: TurnContext) => Promise): Promise; @@ -94,7 +98,8 @@ export class BotFrameworkAdapter extends BotAdapter implements ConnectorClientBu createConnectorClientWithIdentity(serviceUrl: string, identity: ClaimsIdentity): Promise; createConnectorClientWithIdentity(serviceUrl: string, identity: ClaimsIdentity, audience: string): Promise; protected createContext(request: Partial): TurnContext; - createConversation(reference: Partial, logic?: (context: TurnContext) => Promise): Promise; + createConversation(reference: Partial, logic: (context: TurnContext) => Promise): Promise; + createConversation(reference: Partial, parameters: Partial, logic: (context: TurnContext) => Promise): Promise; protected createTokenApiClient(serviceUrl: string, oAuthAppCredentials?: CoreAppCredentials): TokenApiClient; // (undocumented) protected readonly credentials: AppCredentials; @@ -124,10 +129,15 @@ export class BotFrameworkAdapter extends BotAdapter implements ConnectorClientBu getUserToken(context: TurnContext, connectionName: string, magicCode?: string): Promise; // (undocumented) getUserToken(context: TurnContext, connectionName: string, magicCode?: string, oAuthAppCredentials?: CoreAppCredentials): Promise; - // (undocumented) - healthCheck(context: TurnContext): Promise; - readonly isStreamingConnectionOpen: boolean; + get isStreamingConnectionOpen(): boolean; protected oauthApiUrl(contextOrServiceUrl: TurnContext | string): string; + // Warning: (ae-forgotten-export) The symbol "Request" needs to be exported by the entry point index.d.ts + // Warning: (ae-forgotten-export) The symbol "Emitter" needs to be exported by the entry point index.d.ts + // Warning: (ae-forgotten-export) The symbol "Response" needs to be exported by the entry point index.d.ts + // Warning: (ae-forgotten-export) The symbol "BotLogic" needs to be exported by the entry point index.d.ts + // + // (undocumented) + process(req: Request_2 & Emitter, res: Response_2, logic: BotLogic): Promise; processActivity(req: WebRequest, res: WebResponse, logic: (context: TurnContext) => Promise): Promise; processActivityDirect(activity: Activity, logic: (context: TurnContext) => Promise): Promise; processRequest(request: IReceiveRequest): Promise; @@ -138,8 +148,8 @@ export class BotFrameworkAdapter extends BotAdapter implements ConnectorClientBu // (undocumented) signOutUser(context: TurnContext, connectionName?: string, userId?: string, oAuthAppCredentials?: CoreAppCredentials): Promise; // (undocumented) - readonly TokenApiClientCredentialsKey: Symbol; - updateActivity(context: TurnContext, activity: Partial): Promise; + readonly TokenApiClientCredentialsKey: symbol; + updateActivity(context: TurnContext, activity: Partial): Promise; useNamedPipe(logic: (context: TurnContext) => Promise, pipeName?: string): Promise; useWebSocket(req: WebRequest, socket: INodeSocket, head: INodeBuffer, logic: (context: TurnContext) => Promise): Promise; } @@ -162,13 +172,10 @@ export interface BotFrameworkAdapterSettings { // @public export class BotFrameworkHttpClient implements BotFrameworkClient { constructor(credentialProvider: ICredentialProvider, channelService?: string); - // (undocumented) protected buildCredentials(appId: string, oAuthScope?: string): Promise; // (undocumented) protected readonly channelService: string; - postActivity(fromBotId: string, toBotId: string, toUrl: string, serviceUrl: string, conversationId: string, activity: Activity): Promise>; - // (undocumented) - postActivity(fromBotId: string, toBotId: string, toUrl: string, serviceUrl: string, conversationId: string, activity: Activity): Promise; + postActivity(fromBotId: string, toBotId: string, toUrl: string, serviceUrl: string, conversationId: string, activity: Activity): Promise>; } // @public @@ -176,29 +183,17 @@ export class ChannelServiceHandler { constructor(credentialProvider: ICredentialProvider, authConfig: AuthenticationConfiguration, channelService?: string); // (undocumented) protected readonly channelService: string; - // (undocumented) handleCreateConversation(authHeader: string, parameters: ConversationParameters): Promise; - // (undocumented) handleDeleteActivity(authHeader: string, conversationId: string, activityId: string): Promise; - // (undocumented) handleDeleteConversationMember(authHeader: string, conversationId: string, memberId: string): Promise; - // (undocumented) handleGetActivityMembers(authHeader: string, conversationId: string, activityId: string): Promise; - // (undocumented) handleGetConversationMembers(authHeader: string, conversationId: string): Promise; - // (undocumented) handleGetConversationPagedMembers(authHeader: string, conversationId: string, pageSize?: number, continuationToken?: string): Promise; - // (undocumented) handleGetConversations(authHeader: string, conversationId: string, continuationToken?: string): Promise; - // (undocumented) handleReplyToActivity(authHeader: string, conversationId: string, activityId: string, activity: Activity): Promise; - // (undocumented) handleSendConversationHistory(authHeader: string, conversationId: string, transcript: Transcript): Promise; - // (undocumented) handleSendToConversation(authHeader: string, conversationId: string, activity: Activity): Promise; - // (undocumented) handleUpdateActivity(authHeader: string, conversationId: string, activityId: string, activity: Activity): Promise; - // (undocumented) handleUploadAttachment(authHeader: string, conversationId: string, attachmentUpload: AttachmentData): Promise; protected onCreateConversation(claimsIdentity: ClaimsIdentity, parameters: ConversationParameters): Promise; protected onDeleteActivity(claimsIdentity: ClaimsIdentity, conversationId: string, activityId: string): Promise; @@ -214,7 +209,7 @@ export class ChannelServiceHandler { protected onUploadAttachment(claimsIdentity: ClaimsIdentity, conversationId: string, attachmentUpload: AttachmentData): Promise; } -// @public (undocumented) +// @public export class ChannelServiceRoutes { constructor(channelServiceHandler: ChannelServiceHandler); register(server: WebServer, basePath?: string): void; @@ -222,8 +217,8 @@ export class ChannelServiceRoutes { // @public export class EventFactory { - static createHandoffInitiation(context: TurnContext, handoffContext: any, transcript?: Transcript_2): Activity_2; - static createHandoffStatus(conversation: ConversationAccount, state: string, message?: string): Activity_2; + static createHandoffInitiation(context: TurnContext, handoffContext: T, transcript?: Transcript): Activity; + static createHandoffStatus(conversation: ConversationAccount, state: string, message?: string): Activity; } // @public @@ -248,31 +243,34 @@ export class HandoffEventNames { // @public export class InspectionMiddleware extends InterceptionMiddleware { constructor(inspectionState: InspectionState, userState?: UserState, conversationState?: ConversationState, credentials?: Partial); - // (undocumented) protected inbound(turnContext: TurnContext, traceActivity: Partial): Promise; - // (undocumented) protected outbound(turnContext: TurnContext, traceActivities: Partial[]): Promise; - // (undocumented) processCommand(turnContext: TurnContext): Promise; - // (undocumented) protected traceState(turnContext: TurnContext): Promise; } // @public export class InspectionState extends BotState { constructor(storage: Storage_2); - // (undocumented) protected getStorageKey(turnContext: TurnContext): string; } // @public (undocumented) export type RouteHandler = (request: WebRequest, response: WebResponse) => void; +// @public +export class SetSpeakMiddleware implements Middleware { + constructor(voiceName: string | null, fallbackToTextForSpeak: boolean); + onTurn(turnContext: TurnContext, next: () => Promise): Promise; + } + // @public export class SkillHandler extends ChannelServiceHandler { constructor(adapter: BotAdapter, bot: ActivityHandlerBase, conversationIdFactory: SkillConversationIdFactoryBase, credentialProvider: ICredentialProvider, authConfig: AuthenticationConfiguration, channelService?: string); + protected onDeleteActivity(claimsIdentity: ClaimsIdentity, conversationId: string, activityId: string): Promise; protected onReplyToActivity(claimsIdentity: ClaimsIdentity, conversationId: string, activityId: string, activity: Activity): Promise; protected onSendToConversation(claimsIdentity: ClaimsIdentity, conversationId: string, activity: Activity): Promise; + protected onUpdateActivity(claimsIdentity: ClaimsIdentity, conversationId: string, activityId: string, activity: Activity): Promise; readonly SkillConversationReferenceKey: symbol; } @@ -284,24 +282,23 @@ export class SkillHttpClient extends BotFrameworkHttpClient { postToSkill(fromBotId: string, toSkill: BotFrameworkSkill, callbackUrl: string, activity: Activity): Promise; } -// @public (undocumented) +// @public export class StatusCodeError extends Error { constructor(statusCode: StatusCodes, message?: string); // (undocumented) readonly statusCode: StatusCodes; } -// @public (undocumented) +// @public export class StreamingHttpClient implements HttpClient { constructor(server: IStreamingTransportServer); sendRequest(httpRequest: WebResource): Promise; } -// @public (undocumented) +// @public export class TeamsActivityHandler extends ActivityHandler { protected dispatchConversationUpdateActivity(context: TurnContext): Promise; protected handleTeamsAppBasedLinkQuery(context: TurnContext, query: AppBasedLinkQuery): Promise; - // (undocumented) protected handleTeamsCardActionInvoke(context: TurnContext): Promise; protected handleTeamsFileConsent(context: TurnContext, fileConsentCardResponse: FileConsentCardResponse): Promise; protected handleTeamsFileConsentAccept(context: TurnContext, fileConsentCardResponse: FileConsentCardResponse): Promise; @@ -319,70 +316,79 @@ export class TeamsActivityHandler extends ActivityHandler { protected handleTeamsO365ConnectorCardAction(context: TurnContext, query: O365ConnectorCardActionQuery): Promise; protected handleTeamsSigninTokenExchange(context: TurnContext, query: SigninStateVerificationQuery): Promise; protected handleTeamsSigninVerifyState(context: TurnContext, query: SigninStateVerificationQuery): Promise; + protected handleTeamsTabFetch(context: TurnContext, tabRequest: TabRequest): Promise; + protected handleTeamsTabSubmit(context: TurnContext, tabSubmit: TabSubmit): Promise; protected handleTeamsTaskModuleFetch(context: TurnContext, taskModuleRequest: TaskModuleRequest): Promise; protected handleTeamsTaskModuleSubmit(context: TurnContext, taskModuleRequest: TaskModuleRequest): Promise; - // (undocumented) protected onInvokeActivity(context: TurnContext): Promise; - // (undocumented) protected onSignInInvoke(context: TurnContext): Promise; - // (undocumented) protected onTeamsChannelCreated(context: any): Promise; - // (undocumented) onTeamsChannelCreatedEvent(handler: (channelInfo: ChannelInfo, teamInfo: TeamInfo, context: TurnContext, next: () => Promise) => Promise): this; - // (undocumented) protected onTeamsChannelDeleted(context: any): Promise; - // (undocumented) onTeamsChannelDeletedEvent(handler: (channelInfo: ChannelInfo, teamInfo: TeamInfo, context: TurnContext, next: () => Promise) => Promise): this; - // (undocumented) protected onTeamsChannelRenamed(context: any): Promise; - // (undocumented) onTeamsChannelRenamedEvent(handler: (channelInfo: ChannelInfo, teamInfo: TeamInfo, context: TurnContext, next: () => Promise) => Promise): this; - protected onTeamsMembersAdded(context: TurnContext): Promise; // (undocumented) + protected onTeamsChannelRestored(context: any): Promise; + onTeamsChannelRestoredEvent(handler: (channelInfo: ChannelInfo, teamInfo: TeamInfo, context: TurnContext, next: () => Promise) => Promise): this; + protected onTeamsMembersAdded(context: TurnContext): Promise; onTeamsMembersAddedEvent(handler: (membersAdded: TeamsChannelAccount[], teamInfo: TeamInfo, context: TurnContext, next: () => Promise) => Promise): this; protected onTeamsMembersRemoved(context: TurnContext): Promise; - // (undocumented) onTeamsMembersRemovedEvent(handler: (membersRemoved: TeamsChannelAccount[], teamInfo: TeamInfo, context: TurnContext, next: () => Promise) => Promise): this; - // (undocumented) + protected onTeamsTeamArchived(context: any): Promise; + onTeamsTeamArchivedEvent(handler: (teamInfo: TeamInfo, context: TurnContext, next: () => Promise) => Promise): this; + protected onTeamsTeamDeleted(context: any): Promise; + onTeamsTeamDeletedEvent(handler: (teamInfo: TeamInfo, context: TurnContext, next: () => Promise) => Promise): this; + protected onTeamsTeamHardDeleted(context: any): Promise; + onTeamsTeamHardDeletedEvent(handler: (teamInfo: TeamInfo, context: TurnContext, next: () => Promise) => Promise): this; protected onTeamsTeamRenamed(context: any): Promise; - // (undocumented) onTeamsTeamRenamedEvent(handler: (teamInfo: TeamInfo, context: TurnContext, next: () => Promise) => Promise): this; + protected onTeamsTeamRestored(context: any): Promise; + onTeamsTeamRestoredEvent(handler: (teamInfo: TeamInfo, context: TurnContext, next: () => Promise) => Promise): this; + protected onTeamsTeamUnarchived(context: any): Promise; + onTeamsTeamUnarchivedEvent(handler: (teamInfo: TeamInfo, context: TurnContext, next: () => Promise) => Promise): this; } // @public -export function teamsGetChannelId(activity: Activity): string; +export function teamsGetChannelId(activity: Activity): string | null; -// @public (undocumented) -export function teamsGetTeamId(activity: Activity): string; +// @public +export function teamsGetTeamId(activity: Activity): string | null; -// @public (undocumented) +// @public +export function teamsGetTeamInfo(activity: Activity): TeamInfo | null; + +// @public +export function teamsGetTeamMeetingInfo(activity: Activity): TeamsMeetingInfo | null; + +// @public +export function teamsGetTenant(activity: Activity): TenantInfo | null; + +// @public export class TeamsInfo { - // (undocumented) + static getMeetingParticipant(context: TurnContext, meetingId?: string, participantId?: string, tenantId?: string): Promise; static getMember(context: TurnContext, userId: string): Promise; - // (undocumented) static getMembers(context: TurnContext): Promise; - // (undocumented) static getPagedMembers(context: TurnContext, pageSize?: number, continuationToken?: string): Promise; - // (undocumented) static getPagedTeamMembers(context: TurnContext, teamId?: string, pageSize?: number, continuationToken?: string): Promise; - // (undocumented) static getTeamChannels(context: TurnContext, teamId?: string): Promise; - // (undocumented) static getTeamDetails(context: TurnContext, teamId?: string): Promise; - // (undocumented) static getTeamMember(context: TurnContext, teamId?: string, userId?: string): Promise; - // (undocumented) static getTeamMembers(context: TurnContext, teamId?: string): Promise; - // (undocumented) static sendMessageToTeamsChannel(context: TurnContext, activity: Activity, teamsChannelId: string): Promise<[ConversationReference, string]>; } -// @public (undocumented) -export function teamsNotifyUser(activity: Activity): void; +// @public +export function teamsNotifyUser(activity: Activity, alertInMeeting?: boolean, externalResourceUrl?: string): void; + +// @public +export class TeamsSSOTokenExchangeMiddleware implements Middleware { + constructor(storage: Storage_2, oAuthConnectionName: string); + onTurn(context: TurnContext, next: () => Promise): Promise; + } // @public export class TokenResolver { - // (undocumented) static checkForOAuthCards(adapter: BotFrameworkAdapter, context: TurnContext, activity: Activity, log?: string[]): void; } diff --git a/libraries/botbuilder/src/teamsActivityHandler.ts b/libraries/botbuilder/src/teamsActivityHandler.ts index 4a0e6009d3..cc06043a48 100644 --- a/libraries/botbuilder/src/teamsActivityHandler.ts +++ b/libraries/botbuilder/src/teamsActivityHandler.ts @@ -38,7 +38,7 @@ import { TeamsInfo } from './teamsInfo'; * Developers may handle Conversation Update activities sent from Microsoft Teams via two methods: * 1. Overriding methods starting with `on..` and *not* ending in `..Event()` (e.g. `onTeamsMembersAdded()`), or instead * 2. Passing callbacks to methods starting with `on..` *and* ending in `...Event()` (e.g. `onTeamsMembersAddedEvent()`), - * to stay in line with older {@link ActivityHandler} implementation. + * to stay in line with older {@see ActivityHandler} implementation. * * Developers should use either #1 or #2, above for all Conversation Update activities and not *both* #2 and #3 for the same activity. Meaning, * developers should override `onTeamsMembersAdded()` and not use both `onTeamsMembersAdded()` and `onTeamsMembersAddedEvent()`. From 7e595a357cf698180a0eca38b686c5b18b52b41d Mon Sep 17 00:00:00 2001 From: Michael Richardson Date: Wed, 19 May 2021 10:03:23 -0700 Subject: [PATCH 05/13] update api-extractor md --- .../etc/botbuilder-dialogs-adaptive.api.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/libraries/botbuilder-dialogs-adaptive/etc/botbuilder-dialogs-adaptive.api.md b/libraries/botbuilder-dialogs-adaptive/etc/botbuilder-dialogs-adaptive.api.md index 87afb2d8c4..0af3389748 100644 --- a/libraries/botbuilder-dialogs-adaptive/etc/botbuilder-dialogs-adaptive.api.md +++ b/libraries/botbuilder-dialogs-adaptive/etc/botbuilder-dialogs-adaptive.api.md @@ -913,6 +913,7 @@ export class EmitEvent extends Dialog implements EmitE eventValue: ValueExpression; // (undocumented) getConverter(property: keyof EmitEventConfiguration): Converter | ConverterFactory; + handledProperty: StringExpression; protected onComputeId(): string; } @@ -926,6 +927,8 @@ export interface EmitEventConfiguration extends DialogConfiguration { eventName?: StringProperty; // (undocumented) eventValue?: UnknownProperty; + // (undocumented) + handledProperty?: StringProperty; } // @public From 82d6366ed3b73f61162e97b910fbe962a8052736 Mon Sep 17 00:00:00 2001 From: Michael Richardson Date: Wed, 19 May 2021 10:34:42 -0700 Subject: [PATCH 06/13] error->warnings for setters and getters --- libraries/botbuilder-ai/api-extractor.json | 12 +++++- .../api-extractor.json | 12 +++++- libraries/botbuilder-core/api-extractor.json | 12 +++++- .../api-extractor.json | 40 +++++++++++-------- .../api-extractor.json | 40 +++++++++++-------- .../api-extractor.json | 40 +++++++++++-------- .../botbuilder-dialogs/api-extractor.json | 12 +++++- .../botbuilder-testing/api-extractor.json | 12 +++++- libraries/botbuilder/api-extractor.json | 12 +++++- .../botframework-config/api-extractor.json | 12 +++++- .../botframework-schema/api-extractor.json | 12 +++++- .../botframework-streaming/api-extractor.json | 12 +++++- 12 files changed, 171 insertions(+), 57 deletions(-) diff --git a/libraries/botbuilder-ai/api-extractor.json b/libraries/botbuilder-ai/api-extractor.json index 1ab287e175..3c6a3b5585 100644 --- a/libraries/botbuilder-ai/api-extractor.json +++ b/libraries/botbuilder-ai/api-extractor.json @@ -1,7 +1,7 @@ /** * Config file for API Extractor. For more info, please visit: https://api-extractor.com */ -{ + { "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", /** @@ -338,6 +338,16 @@ "ae-missing-release-tag": { "logLevel": "none" + }, + + "ae-setter-with-docs": { + "logLevel": "warning", + "addToApiReportFile": true + }, + + "ae-missing-getter": { + "logLevel": "warning", + "addToApiReportFile": true } // "ae-extra-release-tag": { diff --git a/libraries/botbuilder-applicationinsights/api-extractor.json b/libraries/botbuilder-applicationinsights/api-extractor.json index 1ab287e175..3c6a3b5585 100644 --- a/libraries/botbuilder-applicationinsights/api-extractor.json +++ b/libraries/botbuilder-applicationinsights/api-extractor.json @@ -1,7 +1,7 @@ /** * Config file for API Extractor. For more info, please visit: https://api-extractor.com */ -{ + { "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", /** @@ -338,6 +338,16 @@ "ae-missing-release-tag": { "logLevel": "none" + }, + + "ae-setter-with-docs": { + "logLevel": "warning", + "addToApiReportFile": true + }, + + "ae-missing-getter": { + "logLevel": "warning", + "addToApiReportFile": true } // "ae-extra-release-tag": { diff --git a/libraries/botbuilder-core/api-extractor.json b/libraries/botbuilder-core/api-extractor.json index 1ab287e175..3c6a3b5585 100644 --- a/libraries/botbuilder-core/api-extractor.json +++ b/libraries/botbuilder-core/api-extractor.json @@ -1,7 +1,7 @@ /** * Config file for API Extractor. For more info, please visit: https://api-extractor.com */ -{ + { "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", /** @@ -338,6 +338,16 @@ "ae-missing-release-tag": { "logLevel": "none" + }, + + "ae-setter-with-docs": { + "logLevel": "warning", + "addToApiReportFile": true + }, + + "ae-missing-getter": { + "logLevel": "warning", + "addToApiReportFile": true } // "ae-extra-release-tag": { diff --git a/libraries/botbuilder-dialogs-adaptive-testing/api-extractor.json b/libraries/botbuilder-dialogs-adaptive-testing/api-extractor.json index 8d0c99d3db..5157fe0ea4 100644 --- a/libraries/botbuilder-dialogs-adaptive-testing/api-extractor.json +++ b/libraries/botbuilder-dialogs-adaptive-testing/api-extractor.json @@ -1,7 +1,7 @@ /** * Config file for API Extractor. For more info, please visit: https://api-extractor.com */ -{ + { "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", /** @@ -60,7 +60,7 @@ * This would direct API Extractor to embed those types directly in the .d.ts rollup, as if they had been * local files for library1. */ - "bundledPackages": [], + "bundledPackages": [ ], /** * Determines how the TypeScript compiler engine will be invoked by API Extractor. @@ -78,6 +78,7 @@ * DEFAULT VALUE: "/tsconfig.json" */ // "tsconfigFilePath": "/tsconfig.json", + /** * Provides a compiler configuration that will be used instead of reading the tsconfig.json file from disk. * The object must conform to the TypeScript tsconfig schema: @@ -91,6 +92,7 @@ // "overrideTsconfig": { // . . . // } + /** * This option causes the compiler to be invoked with the --skipLibCheck option. This option is not recommended * and may cause API Extractor to produce incomplete or incorrect declarations, but it may be required when @@ -109,7 +111,7 @@ /** * (REQUIRED) Whether to generate an API report. */ - "enabled": true + "enabled": true, /** * The filename for the API report files. It will be combined with "reportFolder" or "reportTempFolder" to produce @@ -160,7 +162,7 @@ /** * (REQUIRED) Whether to generate a doc model file. */ - "enabled": true + "enabled": true, /** * The output path for the doc model file. The file extension should be ".api.json". @@ -181,7 +183,7 @@ /** * (REQUIRED) Whether to generate the .d.ts rollup file. */ - "enabled": true + "enabled": true, /** * Specifies the output path for a .d.ts rollup file to be generated without any trimming. @@ -209,6 +211,7 @@ */ // "betaTrimmedFilePath": "/dist/-beta.d.ts", + /** * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "public" release. * This file will include only declarations that are marked as "@public". @@ -243,6 +246,7 @@ * DEFAULT VALUE: true */ // "enabled": true, + /** * Specifies where the TSDoc metadata file should be written. * @@ -271,7 +275,7 @@ /** * Configures how API Extractor reports error and warning messages produced during analysis. * - * There are three sources of messages: compiler messages, API Extractor messages, and TSDoc messages. + * There are three sources of messages: compiler messages, API Extractor messages, and TSDoc messages. */ "messages": { /** @@ -299,7 +303,7 @@ * * DEFAULT VALUE: "warning" */ - "logLevel": "warning" + "logLevel": "warning", /** * When addToApiReportFile is true: If API Extractor is configured to write an API report file (.api.md), @@ -309,7 +313,7 @@ * DEFAULT VALUE: false */ // "addToApiReportFile": false - } + }, // "TS2551": { // "logLevel": "warning", @@ -328,13 +332,24 @@ */ "extractorMessageReporting": { "default": { - "logLevel": "error" + "logLevel": "error", // "addToApiReportFile": false }, "ae-missing-release-tag": { "logLevel": "none" + }, + + "ae-setter-with-docs": { + "logLevel": "warning", + "addToApiReportFile": true + }, + + "ae-missing-getter": { + "logLevel": "warning", + "addToApiReportFile": true } + // "ae-extra-release-tag": { // "logLevel": "warning", // "addToApiReportFile": true @@ -355,13 +370,6 @@ "logLevel": "none" // "addToApiReportFile": false } - - // "tsdoc-link-tag-unescaped-text": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . } } } diff --git a/libraries/botbuilder-dialogs-adaptive/api-extractor.json b/libraries/botbuilder-dialogs-adaptive/api-extractor.json index 8d0c99d3db..5157fe0ea4 100644 --- a/libraries/botbuilder-dialogs-adaptive/api-extractor.json +++ b/libraries/botbuilder-dialogs-adaptive/api-extractor.json @@ -1,7 +1,7 @@ /** * Config file for API Extractor. For more info, please visit: https://api-extractor.com */ -{ + { "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", /** @@ -60,7 +60,7 @@ * This would direct API Extractor to embed those types directly in the .d.ts rollup, as if they had been * local files for library1. */ - "bundledPackages": [], + "bundledPackages": [ ], /** * Determines how the TypeScript compiler engine will be invoked by API Extractor. @@ -78,6 +78,7 @@ * DEFAULT VALUE: "/tsconfig.json" */ // "tsconfigFilePath": "/tsconfig.json", + /** * Provides a compiler configuration that will be used instead of reading the tsconfig.json file from disk. * The object must conform to the TypeScript tsconfig schema: @@ -91,6 +92,7 @@ // "overrideTsconfig": { // . . . // } + /** * This option causes the compiler to be invoked with the --skipLibCheck option. This option is not recommended * and may cause API Extractor to produce incomplete or incorrect declarations, but it may be required when @@ -109,7 +111,7 @@ /** * (REQUIRED) Whether to generate an API report. */ - "enabled": true + "enabled": true, /** * The filename for the API report files. It will be combined with "reportFolder" or "reportTempFolder" to produce @@ -160,7 +162,7 @@ /** * (REQUIRED) Whether to generate a doc model file. */ - "enabled": true + "enabled": true, /** * The output path for the doc model file. The file extension should be ".api.json". @@ -181,7 +183,7 @@ /** * (REQUIRED) Whether to generate the .d.ts rollup file. */ - "enabled": true + "enabled": true, /** * Specifies the output path for a .d.ts rollup file to be generated without any trimming. @@ -209,6 +211,7 @@ */ // "betaTrimmedFilePath": "/dist/-beta.d.ts", + /** * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "public" release. * This file will include only declarations that are marked as "@public". @@ -243,6 +246,7 @@ * DEFAULT VALUE: true */ // "enabled": true, + /** * Specifies where the TSDoc metadata file should be written. * @@ -271,7 +275,7 @@ /** * Configures how API Extractor reports error and warning messages produced during analysis. * - * There are three sources of messages: compiler messages, API Extractor messages, and TSDoc messages. + * There are three sources of messages: compiler messages, API Extractor messages, and TSDoc messages. */ "messages": { /** @@ -299,7 +303,7 @@ * * DEFAULT VALUE: "warning" */ - "logLevel": "warning" + "logLevel": "warning", /** * When addToApiReportFile is true: If API Extractor is configured to write an API report file (.api.md), @@ -309,7 +313,7 @@ * DEFAULT VALUE: false */ // "addToApiReportFile": false - } + }, // "TS2551": { // "logLevel": "warning", @@ -328,13 +332,24 @@ */ "extractorMessageReporting": { "default": { - "logLevel": "error" + "logLevel": "error", // "addToApiReportFile": false }, "ae-missing-release-tag": { "logLevel": "none" + }, + + "ae-setter-with-docs": { + "logLevel": "warning", + "addToApiReportFile": true + }, + + "ae-missing-getter": { + "logLevel": "warning", + "addToApiReportFile": true } + // "ae-extra-release-tag": { // "logLevel": "warning", // "addToApiReportFile": true @@ -355,13 +370,6 @@ "logLevel": "none" // "addToApiReportFile": false } - - // "tsdoc-link-tag-unescaped-text": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . } } } diff --git a/libraries/botbuilder-dialogs-declarative/api-extractor.json b/libraries/botbuilder-dialogs-declarative/api-extractor.json index 8d0c99d3db..5157fe0ea4 100644 --- a/libraries/botbuilder-dialogs-declarative/api-extractor.json +++ b/libraries/botbuilder-dialogs-declarative/api-extractor.json @@ -1,7 +1,7 @@ /** * Config file for API Extractor. For more info, please visit: https://api-extractor.com */ -{ + { "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", /** @@ -60,7 +60,7 @@ * This would direct API Extractor to embed those types directly in the .d.ts rollup, as if they had been * local files for library1. */ - "bundledPackages": [], + "bundledPackages": [ ], /** * Determines how the TypeScript compiler engine will be invoked by API Extractor. @@ -78,6 +78,7 @@ * DEFAULT VALUE: "/tsconfig.json" */ // "tsconfigFilePath": "/tsconfig.json", + /** * Provides a compiler configuration that will be used instead of reading the tsconfig.json file from disk. * The object must conform to the TypeScript tsconfig schema: @@ -91,6 +92,7 @@ // "overrideTsconfig": { // . . . // } + /** * This option causes the compiler to be invoked with the --skipLibCheck option. This option is not recommended * and may cause API Extractor to produce incomplete or incorrect declarations, but it may be required when @@ -109,7 +111,7 @@ /** * (REQUIRED) Whether to generate an API report. */ - "enabled": true + "enabled": true, /** * The filename for the API report files. It will be combined with "reportFolder" or "reportTempFolder" to produce @@ -160,7 +162,7 @@ /** * (REQUIRED) Whether to generate a doc model file. */ - "enabled": true + "enabled": true, /** * The output path for the doc model file. The file extension should be ".api.json". @@ -181,7 +183,7 @@ /** * (REQUIRED) Whether to generate the .d.ts rollup file. */ - "enabled": true + "enabled": true, /** * Specifies the output path for a .d.ts rollup file to be generated without any trimming. @@ -209,6 +211,7 @@ */ // "betaTrimmedFilePath": "/dist/-beta.d.ts", + /** * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "public" release. * This file will include only declarations that are marked as "@public". @@ -243,6 +246,7 @@ * DEFAULT VALUE: true */ // "enabled": true, + /** * Specifies where the TSDoc metadata file should be written. * @@ -271,7 +275,7 @@ /** * Configures how API Extractor reports error and warning messages produced during analysis. * - * There are three sources of messages: compiler messages, API Extractor messages, and TSDoc messages. + * There are three sources of messages: compiler messages, API Extractor messages, and TSDoc messages. */ "messages": { /** @@ -299,7 +303,7 @@ * * DEFAULT VALUE: "warning" */ - "logLevel": "warning" + "logLevel": "warning", /** * When addToApiReportFile is true: If API Extractor is configured to write an API report file (.api.md), @@ -309,7 +313,7 @@ * DEFAULT VALUE: false */ // "addToApiReportFile": false - } + }, // "TS2551": { // "logLevel": "warning", @@ -328,13 +332,24 @@ */ "extractorMessageReporting": { "default": { - "logLevel": "error" + "logLevel": "error", // "addToApiReportFile": false }, "ae-missing-release-tag": { "logLevel": "none" + }, + + "ae-setter-with-docs": { + "logLevel": "warning", + "addToApiReportFile": true + }, + + "ae-missing-getter": { + "logLevel": "warning", + "addToApiReportFile": true } + // "ae-extra-release-tag": { // "logLevel": "warning", // "addToApiReportFile": true @@ -355,13 +370,6 @@ "logLevel": "none" // "addToApiReportFile": false } - - // "tsdoc-link-tag-unescaped-text": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . } } } diff --git a/libraries/botbuilder-dialogs/api-extractor.json b/libraries/botbuilder-dialogs/api-extractor.json index 1ab287e175..3c6a3b5585 100644 --- a/libraries/botbuilder-dialogs/api-extractor.json +++ b/libraries/botbuilder-dialogs/api-extractor.json @@ -1,7 +1,7 @@ /** * Config file for API Extractor. For more info, please visit: https://api-extractor.com */ -{ + { "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", /** @@ -338,6 +338,16 @@ "ae-missing-release-tag": { "logLevel": "none" + }, + + "ae-setter-with-docs": { + "logLevel": "warning", + "addToApiReportFile": true + }, + + "ae-missing-getter": { + "logLevel": "warning", + "addToApiReportFile": true } // "ae-extra-release-tag": { diff --git a/libraries/botbuilder-testing/api-extractor.json b/libraries/botbuilder-testing/api-extractor.json index 1ab287e175..3c6a3b5585 100644 --- a/libraries/botbuilder-testing/api-extractor.json +++ b/libraries/botbuilder-testing/api-extractor.json @@ -1,7 +1,7 @@ /** * Config file for API Extractor. For more info, please visit: https://api-extractor.com */ -{ + { "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", /** @@ -338,6 +338,16 @@ "ae-missing-release-tag": { "logLevel": "none" + }, + + "ae-setter-with-docs": { + "logLevel": "warning", + "addToApiReportFile": true + }, + + "ae-missing-getter": { + "logLevel": "warning", + "addToApiReportFile": true } // "ae-extra-release-tag": { diff --git a/libraries/botbuilder/api-extractor.json b/libraries/botbuilder/api-extractor.json index 1ab287e175..3c6a3b5585 100644 --- a/libraries/botbuilder/api-extractor.json +++ b/libraries/botbuilder/api-extractor.json @@ -1,7 +1,7 @@ /** * Config file for API Extractor. For more info, please visit: https://api-extractor.com */ -{ + { "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", /** @@ -338,6 +338,16 @@ "ae-missing-release-tag": { "logLevel": "none" + }, + + "ae-setter-with-docs": { + "logLevel": "warning", + "addToApiReportFile": true + }, + + "ae-missing-getter": { + "logLevel": "warning", + "addToApiReportFile": true } // "ae-extra-release-tag": { diff --git a/libraries/botframework-config/api-extractor.json b/libraries/botframework-config/api-extractor.json index 1ab287e175..3c6a3b5585 100644 --- a/libraries/botframework-config/api-extractor.json +++ b/libraries/botframework-config/api-extractor.json @@ -1,7 +1,7 @@ /** * Config file for API Extractor. For more info, please visit: https://api-extractor.com */ -{ + { "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", /** @@ -338,6 +338,16 @@ "ae-missing-release-tag": { "logLevel": "none" + }, + + "ae-setter-with-docs": { + "logLevel": "warning", + "addToApiReportFile": true + }, + + "ae-missing-getter": { + "logLevel": "warning", + "addToApiReportFile": true } // "ae-extra-release-tag": { diff --git a/libraries/botframework-schema/api-extractor.json b/libraries/botframework-schema/api-extractor.json index 1ab287e175..3c6a3b5585 100644 --- a/libraries/botframework-schema/api-extractor.json +++ b/libraries/botframework-schema/api-extractor.json @@ -1,7 +1,7 @@ /** * Config file for API Extractor. For more info, please visit: https://api-extractor.com */ -{ + { "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", /** @@ -338,6 +338,16 @@ "ae-missing-release-tag": { "logLevel": "none" + }, + + "ae-setter-with-docs": { + "logLevel": "warning", + "addToApiReportFile": true + }, + + "ae-missing-getter": { + "logLevel": "warning", + "addToApiReportFile": true } // "ae-extra-release-tag": { diff --git a/libraries/botframework-streaming/api-extractor.json b/libraries/botframework-streaming/api-extractor.json index 1ab287e175..3c6a3b5585 100644 --- a/libraries/botframework-streaming/api-extractor.json +++ b/libraries/botframework-streaming/api-extractor.json @@ -1,7 +1,7 @@ /** * Config file for API Extractor. For more info, please visit: https://api-extractor.com */ -{ + { "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", /** @@ -338,6 +338,16 @@ "ae-missing-release-tag": { "logLevel": "none" + }, + + "ae-setter-with-docs": { + "logLevel": "warning", + "addToApiReportFile": true + }, + + "ae-missing-getter": { + "logLevel": "warning", + "addToApiReportFile": true } // "ae-extra-release-tag": { From ff0255c4b4f64b4f34cb7a8500c829945c6ec1f3 Mon Sep 17 00:00:00 2001 From: Michael Richardson Date: Wed, 19 May 2021 10:43:57 -0700 Subject: [PATCH 07/13] revert getter/setter changes --- .../etc/botbuilder-applicationinsights.api.md | 1 + .../src/telemetryInitializerMiddleware.ts | 3 +++ libraries/botbuilder-core/etc/botbuilder-core.api.md | 4 ++++ libraries/botbuilder-core/src/botAdapter.ts | 11 +++++++++++ libraries/botbuilder-core/src/testAdapter.ts | 3 +++ libraries/botbuilder-core/src/turnContext.ts | 12 ++++++++++++ .../etc/botbuilder-dialogs-declarative.api.md | 4 ++-- .../src/resources/resourceExplorer.ts | 4 ---- .../src/resources/resourceProvider.ts | 4 ---- .../botbuilder-dialogs/etc/botbuilder-dialogs.api.md | 5 +++++ libraries/botbuilder-dialogs/src/dialog.ts | 6 ++++++ libraries/botbuilder-dialogs/src/dialogContainer.ts | 4 ++++ libraries/botbuilder-dialogs/src/dialogManager.ts | 3 +++ libraries/botbuilder-dialogs/src/dialogSet.ts | 4 ++++ 14 files changed, 58 insertions(+), 10 deletions(-) diff --git a/libraries/botbuilder-applicationinsights/etc/botbuilder-applicationinsights.api.md b/libraries/botbuilder-applicationinsights/etc/botbuilder-applicationinsights.api.md index 98dbb63e04..b7849f63da 100644 --- a/libraries/botbuilder-applicationinsights/etc/botbuilder-applicationinsights.api.md +++ b/libraries/botbuilder-applicationinsights/etc/botbuilder-applicationinsights.api.md @@ -37,6 +37,7 @@ export const ApplicationInsightsWebserverMiddleware: any; // @public export class TelemetryInitializerMiddleware implements Middleware { constructor(telemetryLoggerMiddleware: TelemetryLoggerMiddleware, logActivityTelemetry?: boolean); + // Warning: (ae-setter-with-docs) The doc comment for the property "appInsightsCorrelationContext" must appear on the getter, not the setter. protected set appInsightsCorrelationContext(value: CorrelationContext); protected get appInsightsCorrelationContext(): CorrelationContext; get logActivityTelemetry(): boolean; diff --git a/libraries/botbuilder-applicationinsights/src/telemetryInitializerMiddleware.ts b/libraries/botbuilder-applicationinsights/src/telemetryInitializerMiddleware.ts index 7faa7e729e..4407e5f535 100644 --- a/libraries/botbuilder-applicationinsights/src/telemetryInitializerMiddleware.ts +++ b/libraries/botbuilder-applicationinsights/src/telemetryInitializerMiddleware.ts @@ -45,6 +45,9 @@ export class TelemetryInitializerMiddleware implements Middleware { return this._telemetryLoggerMiddleware; } + /** + * Sets the correlation context so that a mock context can be passed in for testing purposes. + */ protected set appInsightsCorrelationContext(value: CorrelationContext) { this._correlationContext = value; } diff --git a/libraries/botbuilder-core/etc/botbuilder-core.api.md b/libraries/botbuilder-core/etc/botbuilder-core.api.md index 9e803efe94..55d7fdbd48 100644 --- a/libraries/botbuilder-core/etc/botbuilder-core.api.md +++ b/libraries/botbuilder-core/etc/botbuilder-core.api.md @@ -142,6 +142,7 @@ export abstract class BotAdapter { // (undocumented) readonly OAuthScopeKey: symbol; get onTurnError(): (context: TurnContext, error: Error) => Promise; + // Warning: (ae-setter-with-docs) The doc comment for the property "onTurnError" must appear on the getter, not the setter. set onTurnError(value: (context: TurnContext, error: Error) => Promise); protected runMiddleware(context: TurnContext, next: (revocableContext: TurnContext) => Promise): Promise; abstract sendActivities(context: TurnContext, activities: Partial[]): Promise; @@ -681,6 +682,7 @@ export class TestAdapter extends BotAdapter implements ExtendedUserTokenProvider static createConversation(name: string, user?: string, bot?: string): ConversationReference; deleteActivity(context: TurnContext, reference: Partial): Promise; get enableTrace(): boolean; + // Warning: (ae-setter-with-docs) The doc comment for the property "enableTrace" must appear on the getter, not the setter. set enableTrace(value: boolean); exchangeToken(context: TurnContext, connectionName: string, userId: string, tokenExchangeRequest: TokenExchangeRequest): Promise; getAadTokens(context: TurnContext, connectionName: string, resourceUrls: string[]): Promise<{ @@ -781,6 +783,7 @@ export class TurnContext { static getMentions(activity: Partial): Mention[]; static getReplyConversationReference(activity: Partial, reply: ResourceResponse): Partial; get locale(): string | undefined; + // Warning: (ae-setter-with-docs) The doc comment for the property "locale" must appear on the getter, not the setter. set locale(value: string | undefined); onDeleteActivity(handler: DeleteActivityHandler): this; onSendActivities(handler: SendActivitiesHandler): this; @@ -788,6 +791,7 @@ export class TurnContext { static removeMentionText(activity: Partial, id: string): string; static removeRecipientMention(activity: Partial): string; get responded(): boolean; + // Warning: (ae-setter-with-docs) The doc comment for the property "responded" must appear on the getter, not the setter. set responded(value: boolean); sendActivities(activities: Partial[]): Promise; sendActivity(activityOrText: string | Partial, speak?: string, inputHint?: string): Promise; diff --git a/libraries/botbuilder-core/src/botAdapter.ts b/libraries/botbuilder-core/src/botAdapter.ts index ddbfbe6b31..61182aa6c4 100644 --- a/libraries/botbuilder-core/src/botAdapter.ts +++ b/libraries/botbuilder-core/src/botAdapter.ts @@ -112,6 +112,17 @@ export abstract class BotAdapter { return this.turnError; } + /** + * Sets an error handler that can catch exceptions in the middleware or application. + * + * @remarks + * The error handler is called with these parameters: + * + * | Name | Type | Description | + * | :--- | :--- | :--- | + * | `context` | [TurnContext](xref:botbuilder-core.TurnContext) | The context object for the turn. | + * | `error` | `Error` | The Node.js error thrown. | + */ public set onTurnError(value: (context: TurnContext, error: Error) => Promise) { this.turnError = value; } diff --git a/libraries/botbuilder-core/src/testAdapter.ts b/libraries/botbuilder-core/src/testAdapter.ts index dec6fe058a..53972968fb 100644 --- a/libraries/botbuilder-core/src/testAdapter.ts +++ b/libraries/botbuilder-core/src/testAdapter.ts @@ -105,6 +105,9 @@ export class TestAdapter extends BotAdapter implements ExtendedUserTokenProvider return this._sendTraceActivity; } + /** + * Sets a value inidicating whether to send trace activities. + */ public set enableTrace(value: boolean) { this._sendTraceActivity = value; } diff --git a/libraries/botbuilder-core/src/turnContext.ts b/libraries/botbuilder-core/src/turnContext.ts index 1c1a69e11d..c5df01e7f2 100644 --- a/libraries/botbuilder-core/src/turnContext.ts +++ b/libraries/botbuilder-core/src/turnContext.ts @@ -774,6 +774,9 @@ export class TurnContext { return undefined; } + /** + * Sets the locale stored in the turnState. + */ public set locale(value: string | undefined) { const turnObj = this._turnState[this._turn]; if (turnObj) { @@ -783,6 +786,15 @@ export class TurnContext { } } + /** + * Sets the response flag on the current turn context. + * + * @remarks + * The [sendActivity](xref:botbuilder-core.TurnContext.sendActivity) and + * [sendActivities](xref:botbuilder-core.TurnContext.sendActivities) methods call this method to + * update the responded flag. You can call this method directly to indicate that your bot has + * responded appropriately to the incoming activity. + */ public set responded(value: boolean) { if (!value) { throw new Error(`TurnContext: cannot set 'responded' to a value of 'false'.`); diff --git a/libraries/botbuilder-dialogs-declarative/etc/botbuilder-dialogs-declarative.api.md b/libraries/botbuilder-dialogs-declarative/etc/botbuilder-dialogs-declarative.api.md index 270305e8b9..d365cf8fe5 100644 --- a/libraries/botbuilder-dialogs-declarative/etc/botbuilder-dialogs-declarative.api.md +++ b/libraries/botbuilder-dialogs-declarative/etc/botbuilder-dialogs-declarative.api.md @@ -86,7 +86,7 @@ export class ResourceExplorer { addResourceProvider(resourceProvider: ResourceProvider): ResourceExplorer; addResourceType(type: string): void; buildType(kind: string, config: C): T; - get changed(): (event: ResourceChangeEvent, resources: Resource[]) => void; + // Warning: (ae-missing-getter) The property "changed" has a setter but no getter. set changed(callback: (event: ResourceChangeEvent, resources: Resource[]) => void); getResource(id: string): Resource; getResources(fileExtension: string): Resource[]; @@ -109,7 +109,7 @@ export interface ResourceExplorerOptions { // @public export abstract class ResourceProvider { constructor(resourceExplorer: ResourceExplorer); - get changed(): (event: ResourceChangeEvent, resources: Resource[]) => void; + // Warning: (ae-missing-getter) The property "changed" has a setter but no getter. set changed(callback: (event: ResourceChangeEvent, resources: Resource[]) => void); abstract getResource(id: string): Resource; abstract getResources(extension: string): Resource[]; diff --git a/libraries/botbuilder-dialogs-declarative/src/resources/resourceExplorer.ts b/libraries/botbuilder-dialogs-declarative/src/resources/resourceExplorer.ts index fd55a011f6..15e39acc71 100644 --- a/libraries/botbuilder-dialogs-declarative/src/resources/resourceExplorer.ts +++ b/libraries/botbuilder-dialogs-declarative/src/resources/resourceExplorer.ts @@ -69,10 +69,6 @@ export class ResourceExplorer { /** * Event which fires when a resource is changed. */ - public get changed(): (event: ResourceChangeEvent, resources: Resource[]) => void { - return; - } - public set changed(callback: (event: ResourceChangeEvent, resources: Resource[]) => void) { this._eventEmitter.on(ResourceChangeEvent.added, (resources: Resource[]): void => { callback(ResourceChangeEvent.added, resources); diff --git a/libraries/botbuilder-dialogs-declarative/src/resources/resourceProvider.ts b/libraries/botbuilder-dialogs-declarative/src/resources/resourceProvider.ts index 3028a4e7ad..c868b2f9e4 100644 --- a/libraries/botbuilder-dialogs-declarative/src/resources/resourceProvider.ts +++ b/libraries/botbuilder-dialogs-declarative/src/resources/resourceProvider.ts @@ -42,10 +42,6 @@ export abstract class ResourceProvider { * Event which is fired if any resource managed by the resource provider detects changes to the underlining resource. * @param callback Callback function to be called when an event fired. */ - public get changed(): (event: ResourceChangeEvent, resources: Resource[]) => void { - return; - } - public set changed(callback: (event: ResourceChangeEvent, resources: Resource[]) => void) { this._eventEmitter.on(ResourceChangeEvent.added, (resources: Resource[]): void => { callback(ResourceChangeEvent.added, resources); diff --git a/libraries/botbuilder-dialogs/etc/botbuilder-dialogs.api.md b/libraries/botbuilder-dialogs/etc/botbuilder-dialogs.api.md index 15c4a7be31..69efb51b74 100644 --- a/libraries/botbuilder-dialogs/etc/botbuilder-dialogs.api.md +++ b/libraries/botbuilder-dialogs/etc/botbuilder-dialogs.api.md @@ -213,6 +213,7 @@ export abstract class Dialog extends Configurable { static EndOfTurn: DialogTurnResult; getVersion(): string; get id(): string; + // Warning: (ae-setter-with-docs) The doc comment for the property "id" must appear on the getter, not the setter. set id(value: string); protected onComputeId(): string; onDialogEvent(dc: DialogContext, e: DialogEvent): Promise; @@ -221,6 +222,7 @@ export abstract class Dialog extends Configurable { repromptDialog(context: TurnContext, instance: DialogInstance): Promise; resumeDialog(dc: DialogContext, reason: DialogReason, result?: any): Promise; get telemetryClient(): BotTelemetryClient; + // Warning: (ae-setter-with-docs) The doc comment for the property "telemetryClient" must appear on the getter, not the setter. set telemetryClient(client: BotTelemetryClient); protected _telemetryClient: BotTelemetryClient; } @@ -246,6 +248,7 @@ export abstract class DialogContainer extends Dialog { findDialog(dialogId: string): Dialog | undefined; protected getInternalVersion(): string; onDialogEvent(dc: DialogContext, e: DialogEvent): Promise; + // Warning: (ae-setter-with-docs) The doc comment for the property "telemetryClient" must appear on the getter, not the setter. set telemetryClient(client: BotTelemetryClient); get telemetryClient(): BotTelemetryClient; } @@ -330,6 +333,7 @@ export class DialogManager extends Configurable { expireAfter?: number; get initialTurnState(): TurnContextStateCollection; onTurn(context: TurnContext): Promise; + // Warning: (ae-setter-with-docs) The doc comment for the property "rootDialog" must appear on the getter, not the setter. set rootDialog(value: Dialog); get rootDialog(): Dialog; stateConfiguration?: DialogStateManagerConfiguration; @@ -403,6 +407,7 @@ export class DialogSet { getDialogs(): Dialog[]; getVersion(): string; get telemetryClient(): BotTelemetryClient; + // Warning: (ae-setter-with-docs) The doc comment for the property "telemetryClient" must appear on the getter, not the setter. set telemetryClient(client: BotTelemetryClient); } diff --git a/libraries/botbuilder-dialogs/src/dialog.ts b/libraries/botbuilder-dialogs/src/dialog.ts index 47b7e44d34..d9e40a8a2d 100644 --- a/libraries/botbuilder-dialogs/src/dialog.ts +++ b/libraries/botbuilder-dialogs/src/dialog.ts @@ -268,6 +268,9 @@ export abstract class Dialog extends Configurable { return this._id; } + /** + * Sets the unique ID of the dialog. + */ public set id(value: string) { this._id = value; } @@ -279,6 +282,9 @@ export abstract class Dialog extends Configurable { return this._telemetryClient; } + /** + * Sets the telemetry client for this dialog. + */ public set telemetryClient(client: BotTelemetryClient) { this._telemetryClient = client ? client : new NullTelemetryClient(); } diff --git a/libraries/botbuilder-dialogs/src/dialogContainer.ts b/libraries/botbuilder-dialogs/src/dialogContainer.ts index 62962b60ca..60150bdc7d 100644 --- a/libraries/botbuilder-dialogs/src/dialogContainer.ts +++ b/libraries/botbuilder-dialogs/src/dialogContainer.ts @@ -91,6 +91,10 @@ export abstract class DialogContainer extends Dialog { } } + /** + * Set the telemetry client, and also apply it to all child dialogs. + * Future dialogs added to the component will also inherit this client. + */ public set telemetryClient(client: BotTelemetryClient) { this._telemetryClient = client ?? new NullTelemetryClient(); if (this.dialogs.telemetryClient !== this._telemetryClient) { diff --git a/libraries/botbuilder-dialogs/src/dialogManager.ts b/libraries/botbuilder-dialogs/src/dialogManager.ts index c5e65f6798..e275084ad8 100644 --- a/libraries/botbuilder-dialogs/src/dialogManager.ts +++ b/libraries/botbuilder-dialogs/src/dialogManager.ts @@ -99,6 +99,9 @@ export class DialogManager extends Configurable { return this._initialTurnState; } + /** + * Root dialog to start from [onTurn()](#onturn) method. + */ public set rootDialog(value: Dialog) { this.dialogs = new DialogSet(); if (value) { diff --git a/libraries/botbuilder-dialogs/src/dialogSet.ts b/libraries/botbuilder-dialogs/src/dialogSet.ts index 35927be392..20e96d205e 100644 --- a/libraries/botbuilder-dialogs/src/dialogSet.ts +++ b/libraries/botbuilder-dialogs/src/dialogSet.ts @@ -209,6 +209,10 @@ export class DialogSet { return this._telemetryClient; } + /** + * Set the telemetry client for this dialog set and apply it to all current dialogs. + * Future dialogs added to the set will also inherit this client. + */ public set telemetryClient(client: BotTelemetryClient) { this._telemetryClient = client ?? new NullTelemetryClient(); Object.values(this.dialogs).forEach((dialog) => (dialog.telemetryClient = this._telemetryClient)); From bbeaea5c0980448c737b679954cc7eb18bcddac8 Mon Sep 17 00:00:00 2001 From: Michael Richardson Date: Wed, 19 May 2021 10:50:50 -0700 Subject: [PATCH 08/13] update api-extractor .md files --- libraries/botbuilder/etc/botbuilder.api.md | 2 +- .../botframework-streaming/etc/botframework-streaming.api.md | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/libraries/botbuilder/etc/botbuilder.api.md b/libraries/botbuilder/etc/botbuilder.api.md index 2927b1a20c..62890ab576 100644 --- a/libraries/botbuilder/etc/botbuilder.api.md +++ b/libraries/botbuilder/etc/botbuilder.api.md @@ -150,7 +150,7 @@ export class BotFrameworkAdapter extends BotAdapter implements BotFrameworkHttpA // (undocumented) readonly TokenApiClientCredentialsKey: symbol; updateActivity(context: TurnContext, activity: Partial): Promise; - useNamedPipe(logic: (context: TurnContext) => Promise, pipeName?: string): Promise; + useNamedPipe(logic: (context: TurnContext) => Promise, pipeName?: string, retryCount?: number, onListen?: () => void): Promise; useWebSocket(req: WebRequest, socket: INodeSocket, head: INodeBuffer, logic: (context: TurnContext) => Promise): Promise; } diff --git a/libraries/botframework-streaming/etc/botframework-streaming.api.md b/libraries/botframework-streaming/etc/botframework-streaming.api.md index 4aeebd74ed..8818c0ee42 100644 --- a/libraries/botframework-streaming/etc/botframework-streaming.api.md +++ b/libraries/botframework-streaming/etc/botframework-streaming.api.md @@ -423,7 +423,7 @@ export interface IStreamingTransportServer { // (undocumented) send(request: StreamingRequest): Promise; // (undocumented) - start(): Promise; + start(onListen?: () => void): Promise; } // @public @@ -440,7 +440,7 @@ export class NamedPipeServer implements IStreamingTransportServer { disconnect(): void; get isConnected(): boolean; send(request: StreamingRequest): Promise; - start(): Promise; + start(onListen?: () => void): Promise; } // @public From 9194684d14fee7f7d973e7cd68af3466520f9b52 Mon Sep 17 00:00:00 2001 From: Michael Richardson Date: Wed, 19 May 2021 11:39:27 -0700 Subject: [PATCH 09/13] add api-extractor to other libs --- .../adaptive-expressions/api-extractor.json | 375 ++ .../etc/adaptive-expressions.api.md | 3417 +++++++++++++++++ libraries/adaptive-expressions/package.json | 1 + .../api-extractor.json | 375 ++ .../etc/botbuilder-ai-orchestrator.api.md | 67 + .../botbuilder-ai-orchestrator/package.json | 3 +- .../botbuilder-azure-blobs/api-extractor.json | 375 ++ .../etc/botbuilder-azure-blobs.api.md | 45 + libraries/botbuilder-azure-blobs/package.json | 3 +- .../api-extractor.json | 375 ++ .../etc/botbuilder-azure-queues.api.md | 19 + .../botbuilder-azure-queues/package.json | 3 +- ...botbuilder-dialogs-adaptive-testing.api.md | 319 +- .../package.json | 3 +- 14 files changed, 5326 insertions(+), 54 deletions(-) create mode 100644 libraries/adaptive-expressions/api-extractor.json create mode 100644 libraries/adaptive-expressions/etc/adaptive-expressions.api.md create mode 100644 libraries/botbuilder-ai-orchestrator/api-extractor.json create mode 100644 libraries/botbuilder-ai-orchestrator/etc/botbuilder-ai-orchestrator.api.md create mode 100644 libraries/botbuilder-azure-blobs/api-extractor.json create mode 100644 libraries/botbuilder-azure-blobs/etc/botbuilder-azure-blobs.api.md create mode 100644 libraries/botbuilder-azure-queues/api-extractor.json create mode 100644 libraries/botbuilder-azure-queues/etc/botbuilder-azure-queues.api.md diff --git a/libraries/adaptive-expressions/api-extractor.json b/libraries/adaptive-expressions/api-extractor.json new file mode 100644 index 0000000000..3c6a3b5585 --- /dev/null +++ b/libraries/adaptive-expressions/api-extractor.json @@ -0,0 +1,375 @@ +/** + * Config file for API Extractor. For more info, please visit: https://api-extractor.com + */ + { + "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", + + /** + * Optionally specifies another JSON config file that this file extends from. This provides a way for + * standard settings to be shared across multiple projects. + * + * If the path starts with "./" or "../", the path is resolved relative to the folder of the file that contains + * the "extends" field. Otherwise, the first path segment is interpreted as an NPM package name, and will be + * resolved using NodeJS require(). + * + * SUPPORTED TOKENS: none + * DEFAULT VALUE: "" + */ + // "extends": "./shared/api-extractor-base.json" + // "extends": "my-package/include/api-extractor-base.json" + + /** + * Determines the "" token that can be used with other config file settings. The project folder + * typically contains the tsconfig.json and package.json config files, but the path is user-defined. + * + * The path is resolved relative to the folder of the config file that contains the setting. + * + * The default value for "projectFolder" is the token "", which means the folder is determined by traversing + * parent folders, starting from the folder containing api-extractor.json, and stopping at the first folder + * that contains a tsconfig.json file. If a tsconfig.json file cannot be found in this way, then an error + * will be reported. + * + * SUPPORTED TOKENS: + * DEFAULT VALUE: "" + */ + // "projectFolder": "..", + + /** + * (REQUIRED) Specifies the .d.ts file to be used as the starting point for analysis. API Extractor + * analyzes the symbols exported by this module. + * + * The file extension must be ".d.ts" and not ".ts". + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + */ + "mainEntryPointFilePath": "/lib/index.d.ts", + + /** + * A list of NPM package names whose exports should be treated as part of this package. + * + * For example, suppose that Webpack is used to generate a distributed bundle for the project "library1", + * and another NPM package "library2" is embedded in this bundle. Some types from library2 may become part + * of the exported API for library1, but by default API Extractor would generate a .d.ts rollup that explicitly + * imports library2. To avoid this, we can specify: + * + * "bundledPackages": [ "library2" ], + * + * This would direct API Extractor to embed those types directly in the .d.ts rollup, as if they had been + * local files for library1. + */ + "bundledPackages": [ ], + + /** + * Determines how the TypeScript compiler engine will be invoked by API Extractor. + */ + "compiler": { + /** + * Specifies the path to the tsconfig.json file to be used by API Extractor when analyzing the project. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * Note: This setting will be ignored if "overrideTsconfig" is used. + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/tsconfig.json" + */ + // "tsconfigFilePath": "/tsconfig.json", + + /** + * Provides a compiler configuration that will be used instead of reading the tsconfig.json file from disk. + * The object must conform to the TypeScript tsconfig schema: + * + * http://json.schemastore.org/tsconfig + * + * If omitted, then the tsconfig.json file will be read from the "projectFolder". + * + * DEFAULT VALUE: no overrideTsconfig section + */ + // "overrideTsconfig": { + // . . . + // } + + /** + * This option causes the compiler to be invoked with the --skipLibCheck option. This option is not recommended + * and may cause API Extractor to produce incomplete or incorrect declarations, but it may be required when + * dependencies contain declarations that are incompatible with the TypeScript engine that API Extractor uses + * for its analysis. Where possible, the underlying issue should be fixed rather than relying on skipLibCheck. + * + * DEFAULT VALUE: false + */ + // "skipLibCheck": true, + }, + + /** + * Configures how the API report file (*.api.md) will be generated. + */ + "apiReport": { + /** + * (REQUIRED) Whether to generate an API report. + */ + "enabled": true, + + /** + * The filename for the API report files. It will be combined with "reportFolder" or "reportTempFolder" to produce + * a full file path. + * + * The file extension should be ".api.md", and the string should not contain a path separator such as "\" or "/". + * + * SUPPORTED TOKENS: , + * DEFAULT VALUE: ".api.md" + */ + // "reportFileName": ".api.md", + + /** + * Specifies the folder where the API report file is written. The file name portion is determined by + * the "reportFileName" setting. + * + * The API report file is normally tracked by Git. Changes to it can be used to trigger a branch policy, + * e.g. for an API review. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/etc/" + */ + // "reportFolder": "/etc/", + + /** + * Specifies the folder where the temporary report file is written. The file name portion is determined by + * the "reportFileName" setting. + * + * After the temporary file is written to disk, it is compared with the file in the "reportFolder". + * If they are different, a production build will fail. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/temp/" + */ + // "reportTempFolder": "/temp/" + }, + + /** + * Configures how the doc model file (*.api.json) will be generated. + */ + "docModel": { + /** + * (REQUIRED) Whether to generate a doc model file. + */ + "enabled": true, + + /** + * The output path for the doc model file. The file extension should be ".api.json". + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/temp/.api.json" + */ + // "apiJsonFilePath": "/temp/.api.json" + }, + + /** + * Configures how the .d.ts rollup file will be generated. + */ + "dtsRollup": { + /** + * (REQUIRED) Whether to generate the .d.ts rollup file. + */ + "enabled": true, + + /** + * Specifies the output path for a .d.ts rollup file to be generated without any trimming. + * This file will include all declarations that are exported by the main entry point. + * + * If the path is an empty string, then this file will not be written. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/dist/.d.ts" + */ + // "untrimmedFilePath": "/dist/.d.ts", + + /** + * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "beta" release. + * This file will include only declarations that are marked as "@public" or "@beta". + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "" + */ + // "betaTrimmedFilePath": "/dist/-beta.d.ts", + + + /** + * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "public" release. + * This file will include only declarations that are marked as "@public". + * + * If the path is an empty string, then this file will not be written. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "" + */ + // "publicTrimmedFilePath": "/dist/-public.d.ts", + + /** + * When a declaration is trimmed, by default it will be replaced by a code comment such as + * "Excluded from this release type: exampleMember". Set "omitTrimmingComments" to true to remove the + * declaration completely. + * + * DEFAULT VALUE: false + */ + // "omitTrimmingComments": true + }, + + /** + * Configures how the tsdoc-metadata.json file will be generated. + */ + "tsdocMetadata": { + /** + * Whether to generate the tsdoc-metadata.json file. + * + * DEFAULT VALUE: true + */ + // "enabled": true, + + /** + * Specifies where the TSDoc metadata file should be written. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * The default value is "", which causes the path to be automatically inferred from the "tsdocMetadata", + * "typings" or "main" fields of the project's package.json. If none of these fields are set, the lookup + * falls back to "tsdoc-metadata.json" in the package folder. + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "" + */ + // "tsdocMetadataFilePath": "/dist/tsdoc-metadata.json" + }, + + /** + * Specifies what type of newlines API Extractor should use when writing output files. By default, the output files + * will be written with Windows-style newlines. To use POSIX-style newlines, specify "lf" instead. + * To use the OS's default newline kind, specify "os". + * + * DEFAULT VALUE: "crlf" + */ + // "newlineKind": "crlf", + + /** + * Configures how API Extractor reports error and warning messages produced during analysis. + * + * There are three sources of messages: compiler messages, API Extractor messages, and TSDoc messages. + */ + "messages": { + /** + * Configures handling of diagnostic messages reported by the TypeScript compiler engine while analyzing + * the input .d.ts files. + * + * TypeScript message identifiers start with "TS" followed by an integer. For example: "TS2551" + * + * DEFAULT VALUE: A single "default" entry with logLevel=warning. + */ + "compilerMessageReporting": { + /** + * Configures the default routing for messages that don't match an explicit rule in this table. + */ + "default": { + /** + * Specifies whether the message should be written to the the tool's output log. Note that + * the "addToApiReportFile" property may supersede this option. + * + * Possible values: "error", "warning", "none" + * + * Errors cause the build to fail and return a nonzero exit code. Warnings cause a production build fail + * and return a nonzero exit code. For a non-production build (e.g. when "api-extractor run" includes + * the "--local" option), the warning is displayed but the build will not fail. + * + * DEFAULT VALUE: "warning" + */ + "logLevel": "warning", + + /** + * When addToApiReportFile is true: If API Extractor is configured to write an API report file (.api.md), + * then the message will be written inside that file; otherwise, the message is instead logged according to + * the "logLevel" option. + * + * DEFAULT VALUE: false + */ + // "addToApiReportFile": false + }, + + // "TS2551": { + // "logLevel": "warning", + // "addToApiReportFile": true + // }, + // + // . . . + }, + + /** + * Configures handling of messages reported by API Extractor during its analysis. + * + * API Extractor message identifiers start with "ae-". For example: "ae-extra-release-tag" + * + * DEFAULT VALUE: See api-extractor-defaults.json for the complete table of extractorMessageReporting mappings + */ + "extractorMessageReporting": { + "default": { + "logLevel": "error", + // "addToApiReportFile": false + }, + + "ae-missing-release-tag": { + "logLevel": "none" + }, + + "ae-setter-with-docs": { + "logLevel": "warning", + "addToApiReportFile": true + }, + + "ae-missing-getter": { + "logLevel": "warning", + "addToApiReportFile": true + } + + // "ae-extra-release-tag": { + // "logLevel": "warning", + // "addToApiReportFile": true + // }, + // + // . . . + }, + + /** + * Configures handling of messages reported by the TSDoc parser when analyzing code comments. + * + * TSDoc message identifiers start with "tsdoc-". For example: "tsdoc-link-tag-unescaped-text" + * + * DEFAULT VALUE: A single "default" entry with logLevel=warning. + */ + "tsdocMessageReporting": { + "default": { + "logLevel": "none" + // "addToApiReportFile": false + } + } + } +} diff --git a/libraries/adaptive-expressions/etc/adaptive-expressions.api.md b/libraries/adaptive-expressions/etc/adaptive-expressions.api.md new file mode 100644 index 0000000000..76eda96dea --- /dev/null +++ b/libraries/adaptive-expressions/etc/adaptive-expressions.api.md @@ -0,0 +1,3417 @@ +## API Report File for "adaptive-expressions" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +import { ANTLRErrorListener } from 'antlr4ts'; +import { ATN } from 'antlr4ts/atn/ATN'; +import { CharStream } from 'antlr4ts/CharStream'; +import { Lexer } from 'antlr4ts/Lexer'; +import { Parser } from 'antlr4ts/Parser'; +import { ParserRuleContext } from 'antlr4ts/ParserRuleContext'; +import { ParseTree } from 'antlr4ts/tree'; +import { ParseTreeListener } from 'antlr4ts/tree/ParseTreeListener'; +import { ParseTreeVisitor } from 'antlr4ts/tree/ParseTreeVisitor'; +import { RecognitionException } from 'antlr4ts'; +import { Recognizer } from 'antlr4ts'; +import { RuleContext } from 'antlr4ts/RuleContext'; +import { TerminalNode } from 'antlr4ts/tree/TerminalNode'; +import { TokenStream } from 'antlr4ts/TokenStream'; +import { Vocabulary } from 'antlr4ts/Vocabulary'; + +// @public (undocumented) +export class Alpha_numsContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: CommonRegexVisitor): Result; + // (undocumented) + digit(): DigitContext[]; + // (undocumented) + digit(i: number): DigitContext; + // (undocumented) + enterRule(listener: CommonRegexListener): void; + // (undocumented) + exitRule(listener: CommonRegexListener): void; + // (undocumented) + letter(): LetterContext[]; + // (undocumented) + letter(i: number): LetterContext; + // (undocumented) + readonly ruleIndex: number; + // (undocumented) + Underscore(): TerminalNode[]; + // (undocumented) + Underscore(i: number): TerminalNode; +} + +// @public (undocumented) +export class AlternationContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: CommonRegexVisitor): Result; + // (undocumented) + enterRule(listener: CommonRegexListener): void; + // (undocumented) + exitRule(listener: CommonRegexListener): void; + // (undocumented) + expr(): ExprContext[]; + // (undocumented) + expr(i: number): ExprContext; + // (undocumented) + Pipe(): TerminalNode[]; + // (undocumented) + Pipe(i: number): TerminalNode; + // (undocumented) + readonly ruleIndex: number; +} + +// @public (undocumented) +export class ArgsListContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: ExpressionAntlrParserVisitor): Result; + // (undocumented) + COMMA(): TerminalNode[]; + // (undocumented) + COMMA(i: number): TerminalNode; + // (undocumented) + enterRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + exitRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + expression(): ExpressionContext[]; + // (undocumented) + expression(i: number): ExpressionContext; + // (undocumented) + lambda(): LambdaContext[]; + // (undocumented) + lambda(i: number): LambdaContext; + // (undocumented) + readonly ruleIndex: number; +} + +// @public (undocumented) +export class ArrayCreationExpContext extends PrimaryExpressionContext { + constructor(ctx: PrimaryExpressionContext); + // (undocumented) + accept(visitor: ExpressionAntlrParserVisitor): Result; + // (undocumented) + argsList(): ArgsListContext | undefined; + // (undocumented) + CLOSE_SQUARE_BRACKET(): TerminalNode; + // (undocumented) + enterRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + exitRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + OPEN_SQUARE_BRACKET(): TerminalNode; +} + +// @public +export class ArrayExpression extends ExpressionProperty { + constructor(value?: T[] | string | Expression); + setValue(value: T[] | string | Expression): void; +} + +// @public +export class ArrayExpressionConverter { + // Warning: (ae-forgotten-export) The symbol "Input" needs to be exported by the entry point index.d.ts + convert(value: Input | ArrayExpression): ArrayExpression; +} + +// @public (undocumented) +export class AtomContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: CommonRegexVisitor): Result; + // (undocumented) + capture(): CaptureContext | undefined; + // (undocumented) + Caret(): TerminalNode | undefined; + // (undocumented) + character_class(): Character_classContext | undefined; + // (undocumented) + Dot(): TerminalNode | undefined; + // (undocumented) + EndOfSubject(): TerminalNode | undefined; + // (undocumented) + enterRule(listener: CommonRegexListener): void; + // (undocumented) + exitRule(listener: CommonRegexListener): void; + // (undocumented) + literal(): LiteralContext | undefined; + // (undocumented) + non_capture(): Non_captureContext | undefined; + // (undocumented) + option(): OptionContext | undefined; + // (undocumented) + readonly ruleIndex: number; + // (undocumented) + shared_atom(): Shared_atomContext | undefined; +} + +// @public (undocumented) +export class BinaryOpExpContext extends ExpressionContext { + constructor(ctx: ExpressionContext); + // (undocumented) + accept(visitor: ExpressionAntlrParserVisitor): Result; + // (undocumented) + ASTERISK(): TerminalNode | undefined; + // (undocumented) + DOUBLE_AND(): TerminalNode | undefined; + // (undocumented) + DOUBLE_EQUAL(): TerminalNode | undefined; + // (undocumented) + DOUBLE_VERTICAL_CYLINDER(): TerminalNode | undefined; + // (undocumented) + enterRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + exitRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + expression(): ExpressionContext[]; + // (undocumented) + expression(i: number): ExpressionContext; + // (undocumented) + LESS_OR_EQUAl(): TerminalNode | undefined; + // (undocumented) + LESS_THAN(): TerminalNode | undefined; + // (undocumented) + MORE_OR_EQUAL(): TerminalNode | undefined; + // (undocumented) + MORE_THAN(): TerminalNode | undefined; + // (undocumented) + NOT_EQUAL(): TerminalNode | undefined; + // (undocumented) + NULL_COALESCE(): TerminalNode | undefined; + // (undocumented) + PERCENT(): TerminalNode | undefined; + // (undocumented) + PLUS(): TerminalNode | undefined; + // (undocumented) + SINGLE_AND(): TerminalNode | undefined; + // (undocumented) + SLASH(): TerminalNode | undefined; + // (undocumented) + SUBSTRACT(): TerminalNode | undefined; + // (undocumented) + XOR(): TerminalNode | undefined; +} + +// @public +export class BoolExpression extends ExpressionProperty { + constructor(value?: boolean | string | Expression); + setValue(value: boolean | string | Expression): void; +} + +// @public +export class BoolExpressionConverter { + // Warning: (ae-forgotten-export) The symbol "Input" needs to be exported by the entry point index.d.ts + convert(value: Input_2 | BoolExpression): BoolExpression; +} + +// @public (undocumented) +export class CaptureContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: CommonRegexVisitor): Result; + // (undocumented) + alternation(): AlternationContext; + // (undocumented) + CloseParen(): TerminalNode; + // (undocumented) + enterRule(listener: CommonRegexListener): void; + // (undocumented) + exitRule(listener: CommonRegexListener): void; + // (undocumented) + GreaterThan(): TerminalNode | undefined; + // (undocumented) + LessThan(): TerminalNode | undefined; + // (undocumented) + name(): NameContext | undefined; + // (undocumented) + OpenParen(): TerminalNode; + // (undocumented) + QuestionMark(): TerminalNode | undefined; + // (undocumented) + readonly ruleIndex: number; +} + +// @public (undocumented) +export class Cc_atomContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: CommonRegexVisitor): Result; + // (undocumented) + cc_literal(): Cc_literalContext[]; + // (undocumented) + cc_literal(i: number): Cc_literalContext; + // (undocumented) + enterRule(listener: CommonRegexListener): void; + // (undocumented) + exitRule(listener: CommonRegexListener): void; + // (undocumented) + Hyphen(): TerminalNode | undefined; + // (undocumented) + readonly ruleIndex: number; + // (undocumented) + shared_atom(): Shared_atomContext | undefined; +} + +// @public (undocumented) +export class Cc_literalContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: CommonRegexVisitor): Result; + // (undocumented) + Caret(): TerminalNode | undefined; + // (undocumented) + CharacterClassStart(): TerminalNode | undefined; + // (undocumented) + CloseParen(): TerminalNode | undefined; + // (undocumented) + Dot(): TerminalNode | undefined; + // (undocumented) + EndOfSubject(): TerminalNode | undefined; + // (undocumented) + enterRule(listener: CommonRegexListener): void; + // (undocumented) + exitRule(listener: CommonRegexListener): void; + // (undocumented) + OpenParen(): TerminalNode | undefined; + // (undocumented) + Pipe(): TerminalNode | undefined; + // (undocumented) + Plus(): TerminalNode | undefined; + // (undocumented) + QuestionMark(): TerminalNode | undefined; + // (undocumented) + readonly ruleIndex: number; + // (undocumented) + shared_literal(): Shared_literalContext | undefined; + // (undocumented) + Star(): TerminalNode | undefined; +} + +// @public (undocumented) +export class Character_classContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: CommonRegexVisitor): Result; + // (undocumented) + Caret(): TerminalNode | undefined; + // (undocumented) + cc_atom(): Cc_atomContext[]; + // (undocumented) + cc_atom(i: number): Cc_atomContext; + // (undocumented) + CharacterClassEnd(): TerminalNode; + // (undocumented) + CharacterClassStart(): TerminalNode; + // (undocumented) + enterRule(listener: CommonRegexListener): void; + // (undocumented) + exitRule(listener: CommonRegexListener): void; + // (undocumented) + readonly ruleIndex: number; +} + +// @public +export class Clause extends Expression { + constructor(clauseOrExpression?: Clause | Expression | Expression[]); + anyBindings: Map; + matches(clause: Clause, memory: MemoryInterface | any): boolean; + relationship(other: Clause, comparers: PredicateComparers): RelationshipType; + splitIgnores(): void; + subsumed: boolean; + toString(builder?: string[], indent?: number): string; +} + +// @public +export class CommonRegex { + static CreateRegex(pattern: string): RegExp; + } + +// @public (undocumented) +export class CommonRegexLexer extends Lexer { + // (undocumented) + static __ATN: ATN; + constructor(input: CharStream); + // (undocumented) + static readonly ALC = 44; + // (undocumented) + static readonly Ampersand = 43; + // (undocumented) + static readonly _ATN: ATN; + // (undocumented) + static readonly AUC = 70; + // (undocumented) + static readonly Backslash = 10; + // (undocumented) + static readonly BellChar = 3; + // (undocumented) + static readonly BLC = 45; + // (undocumented) + static readonly BlockQuoted = 2; + // (undocumented) + static readonly BUC = 71; + // (undocumented) + static readonly Caret = 23; + // (undocumented) + static readonly CarriageReturn = 8; + // (undocumented) + static readonly channelNames: string[]; + // (undocumented) + readonly channelNames: string[]; + // (undocumented) + static readonly CharacterClassEnd = 22; + // (undocumented) + static readonly CharacterClassStart = 21; + // (undocumented) + static readonly CharWithoutProperty = 16; + // (undocumented) + static readonly CharWithProperty = 15; + // (undocumented) + static readonly CLC = 46; + // (undocumented) + static readonly CloseBrace = 29; + // (undocumented) + static readonly CloseParen = 34; + // (undocumented) + static readonly Colon = 39; + // (undocumented) + static readonly Comma = 30; + // (undocumented) + static readonly ControlChar = 4; + // (undocumented) + static readonly CUC = 72; + // (undocumented) + static readonly D0 = 105; + // (undocumented) + static readonly D1 = 96; + // (undocumented) + static readonly D2 = 97; + // (undocumented) + static readonly D3 = 98; + // (undocumented) + static readonly D4 = 99; + // (undocumented) + static readonly D5 = 100; + // (undocumented) + static readonly D6 = 101; + // (undocumented) + static readonly D7 = 102; + // (undocumented) + static readonly D8 = 103; + // (undocumented) + static readonly D9 = 104; + // (undocumented) + static readonly DecimalDigit = 13; + // (undocumented) + static readonly DLC = 47; + // (undocumented) + static readonly Dot = 12; + // (undocumented) + static readonly DUC = 73; + // (undocumented) + static readonly ELC = 48; + // (undocumented) + static readonly EndOfSubject = 31; + // (undocumented) + static readonly Equals = 41; + // (undocumented) + static readonly EscapeChar = 5; + // (undocumented) + static readonly EUC = 74; + // (undocumented) + static readonly Exclamation = 42; + // (undocumented) + static readonly FLC = 49; + // (undocumented) + static readonly FormFeed = 6; + // (undocumented) + static readonly FUC = 75; + // (undocumented) + static readonly GLC = 50; + // (undocumented) + readonly grammarFileName: string; + // (undocumented) + static readonly GreaterThan = 36; + // (undocumented) + static readonly GUC = 76; + // (undocumented) + static readonly Hash = 40; + // (undocumented) + static readonly HexChar = 11; + // (undocumented) + static readonly HLC = 51; + // (undocumented) + static readonly HUC = 77; + // (undocumented) + static readonly Hyphen = 24; + // (undocumented) + static readonly ILC = 52; + // (undocumented) + static readonly IUC = 78; + // (undocumented) + static readonly JLC = 53; + // (undocumented) + static readonly JUC = 79; + // (undocumented) + static readonly KLC = 54; + // (undocumented) + static readonly KUC = 80; + // (undocumented) + static readonly LessThan = 35; + // (undocumented) + static readonly LLC = 55; + // (undocumented) + static readonly LUC = 81; + // (undocumented) + static readonly MLC = 56; + // (undocumented) + static readonly modeNames: string[]; + // (undocumented) + readonly modeNames: string[]; + // (undocumented) + static readonly MUC = 82; + // (undocumented) + static readonly NewLine = 7; + // (undocumented) + static readonly NLC = 57; + // (undocumented) + static readonly NotDecimalDigit = 14; + // (undocumented) + static readonly NotWhiteSpace = 18; + // (undocumented) + static readonly NotWordChar = 20; + // (undocumented) + static readonly NUC = 83; + // (undocumented) + static readonly OLC = 58; + // (undocumented) + static readonly OpenBrace = 28; + // (undocumented) + static readonly OpenParen = 33; + // (undocumented) + static readonly OtherChar = 106; + // (undocumented) + static readonly OUC = 84; + // (undocumented) + static readonly Pipe = 32; + // (undocumented) + static readonly PLC = 59; + // (undocumented) + static readonly Plus = 26; + // (undocumented) + static readonly PUC = 85; + // (undocumented) + static readonly QLC = 60; + // (undocumented) + static readonly QUC = 86; + // (undocumented) + static readonly QuestionMark = 25; + // (undocumented) + static readonly Quoted = 1; + // (undocumented) + static readonly RLC = 61; + // (undocumented) + static readonly RUC = 87; + // (undocumented) + static readonly ruleNames: string[]; + // (undocumented) + readonly ruleNames: string[]; + // (undocumented) + readonly serializedATN: string; + // (undocumented) + static readonly _serializedATN: string; + // (undocumented) + static readonly SingleQuote = 37; + // (undocumented) + static readonly SLC = 62; + // (undocumented) + static readonly Star = 27; + // (undocumented) + static readonly SUC = 88; + // (undocumented) + static readonly Tab = 9; + // (undocumented) + static readonly TLC = 63; + // (undocumented) + static readonly TUC = 89; + // (undocumented) + static readonly ULC = 64; + // (undocumented) + static readonly Underscore = 38; + // (undocumented) + static readonly UUC = 90; + // (undocumented) + static readonly VLC = 65; + // (undocumented) + static readonly VOCABULARY: Vocabulary; + // (undocumented) + readonly vocabulary: Vocabulary; + // (undocumented) + static readonly VUC = 91; + // (undocumented) + static readonly WhiteSpace = 17; + // (undocumented) + static readonly WLC = 66; + // (undocumented) + static readonly WordChar = 19; + // (undocumented) + static readonly WUC = 92; + // (undocumented) + static readonly XLC = 67; + // (undocumented) + static readonly XUC = 93; + // (undocumented) + static readonly YLC = 68; + // (undocumented) + static readonly YUC = 94; + // (undocumented) + static readonly ZLC = 69; + // (undocumented) + static readonly ZUC = 95; +} + +// @public +export interface CommonRegexListener extends ParseTreeListener { + enterAlpha_nums?: (ctx: Alpha_numsContext) => void; + enterAlternation?: (ctx: AlternationContext) => void; + enterAtom?: (ctx: AtomContext) => void; + enterCapture?: (ctx: CaptureContext) => void; + enterCc_atom?: (ctx: Cc_atomContext) => void; + enterCc_literal?: (ctx: Cc_literalContext) => void; + enterCharacter_class?: (ctx: Character_classContext) => void; + enterDigit?: (ctx: DigitContext) => void; + enterDigits?: (ctx: DigitsContext) => void; + enterElement?: (ctx: ElementContext) => void; + enterExpr?: (ctx: ExprContext) => void; + enterLetter?: (ctx: LetterContext) => void; + enterLiteral?: (ctx: LiteralContext) => void; + enterName?: (ctx: NameContext) => void; + enterNon_capture?: (ctx: Non_captureContext) => void; + enterNon_close_paren?: (ctx: Non_close_parenContext) => void; + enterNon_close_parens?: (ctx: Non_close_parensContext) => void; + enterNumber?: (ctx: NumberContext) => void; + enterOctal_char?: (ctx: Octal_charContext) => void; + enterOctal_digit?: (ctx: Octal_digitContext) => void; + enterOption?: (ctx: OptionContext) => void; + enterOption_flag?: (ctx: Option_flagContext) => void; + enterParse?: (ctx: ParseContext) => void; + enterQuantifier?: (ctx: QuantifierContext) => void; + enterQuantifier_type?: (ctx: Quantifier_typeContext) => void; + enterShared_atom?: (ctx: Shared_atomContext) => void; + enterShared_literal?: (ctx: Shared_literalContext) => void; + exitAlpha_nums?: (ctx: Alpha_numsContext) => void; + exitAlternation?: (ctx: AlternationContext) => void; + exitAtom?: (ctx: AtomContext) => void; + exitCapture?: (ctx: CaptureContext) => void; + exitCc_atom?: (ctx: Cc_atomContext) => void; + exitCc_literal?: (ctx: Cc_literalContext) => void; + exitCharacter_class?: (ctx: Character_classContext) => void; + exitDigit?: (ctx: DigitContext) => void; + exitDigits?: (ctx: DigitsContext) => void; + exitElement?: (ctx: ElementContext) => void; + exitExpr?: (ctx: ExprContext) => void; + exitLetter?: (ctx: LetterContext) => void; + exitLiteral?: (ctx: LiteralContext) => void; + exitName?: (ctx: NameContext) => void; + exitNon_capture?: (ctx: Non_captureContext) => void; + exitNon_close_paren?: (ctx: Non_close_parenContext) => void; + exitNon_close_parens?: (ctx: Non_close_parensContext) => void; + exitNumber?: (ctx: NumberContext) => void; + exitOctal_char?: (ctx: Octal_charContext) => void; + exitOctal_digit?: (ctx: Octal_digitContext) => void; + exitOption?: (ctx: OptionContext) => void; + exitOption_flag?: (ctx: Option_flagContext) => void; + exitParse?: (ctx: ParseContext) => void; + exitQuantifier?: (ctx: QuantifierContext) => void; + exitQuantifier_type?: (ctx: Quantifier_typeContext) => void; + exitShared_atom?: (ctx: Shared_atomContext) => void; + exitShared_literal?: (ctx: Shared_literalContext) => void; +} + +// @public (undocumented) +export class CommonRegexParser extends Parser { + // (undocumented) + static __ATN: ATN; + constructor(input: TokenStream); + // (undocumented) + static readonly ALC = 44; + // (undocumented) + alpha_nums(): Alpha_numsContext; + // (undocumented) + alternation(): AlternationContext; + // (undocumented) + static readonly Ampersand = 43; + // (undocumented) + static readonly _ATN: ATN; + // (undocumented) + atom(): AtomContext; + // (undocumented) + static readonly AUC = 70; + // (undocumented) + static readonly Backslash = 10; + // (undocumented) + static readonly BellChar = 3; + // (undocumented) + static readonly BLC = 45; + // (undocumented) + static readonly BlockQuoted = 2; + // (undocumented) + static readonly BUC = 71; + // (undocumented) + capture(): CaptureContext; + // (undocumented) + static readonly Caret = 23; + // (undocumented) + static readonly CarriageReturn = 8; + // (undocumented) + cc_atom(): Cc_atomContext; + // (undocumented) + cc_literal(): Cc_literalContext; + // (undocumented) + character_class(): Character_classContext; + // (undocumented) + static readonly CharacterClassEnd = 22; + // (undocumented) + static readonly CharacterClassStart = 21; + // (undocumented) + static readonly CharWithoutProperty = 16; + // (undocumented) + static readonly CharWithProperty = 15; + // (undocumented) + static readonly CLC = 46; + // (undocumented) + static readonly CloseBrace = 29; + // (undocumented) + static readonly CloseParen = 34; + // (undocumented) + static readonly Colon = 39; + // (undocumented) + static readonly Comma = 30; + // (undocumented) + static readonly ControlChar = 4; + // (undocumented) + static readonly CUC = 72; + // (undocumented) + static readonly D0 = 105; + // (undocumented) + static readonly D1 = 96; + // (undocumented) + static readonly D2 = 97; + // (undocumented) + static readonly D3 = 98; + // (undocumented) + static readonly D4 = 99; + // (undocumented) + static readonly D5 = 100; + // (undocumented) + static readonly D6 = 101; + // (undocumented) + static readonly D7 = 102; + // (undocumented) + static readonly D8 = 103; + // (undocumented) + static readonly D9 = 104; + // (undocumented) + static readonly DecimalDigit = 13; + // (undocumented) + digit(): DigitContext; + // (undocumented) + digits(): DigitsContext; + // (undocumented) + static readonly DLC = 47; + // (undocumented) + static readonly Dot = 12; + // (undocumented) + static readonly DUC = 73; + // (undocumented) + static readonly ELC = 48; + // (undocumented) + element(): ElementContext; + // (undocumented) + static readonly EndOfSubject = 31; + // (undocumented) + static readonly Equals = 41; + // (undocumented) + static readonly EscapeChar = 5; + // (undocumented) + static readonly EUC = 74; + // (undocumented) + static readonly Exclamation = 42; + // (undocumented) + expr(): ExprContext; + // (undocumented) + static readonly FLC = 49; + // (undocumented) + static readonly FormFeed = 6; + // (undocumented) + static readonly FUC = 75; + // (undocumented) + static readonly GLC = 50; + // (undocumented) + readonly grammarFileName: string; + // (undocumented) + static readonly GreaterThan = 36; + // (undocumented) + static readonly GUC = 76; + // (undocumented) + static readonly Hash = 40; + // (undocumented) + static readonly HexChar = 11; + // (undocumented) + static readonly HLC = 51; + // (undocumented) + static readonly HUC = 77; + // (undocumented) + static readonly Hyphen = 24; + // (undocumented) + static readonly ILC = 52; + // (undocumented) + static readonly IUC = 78; + // (undocumented) + static readonly JLC = 53; + // (undocumented) + static readonly JUC = 79; + // (undocumented) + static readonly KLC = 54; + // (undocumented) + static readonly KUC = 80; + // (undocumented) + static readonly LessThan = 35; + // (undocumented) + letter(): LetterContext; + // (undocumented) + literal(): LiteralContext; + // (undocumented) + static readonly LLC = 55; + // (undocumented) + static readonly LUC = 81; + // (undocumented) + static readonly MLC = 56; + // (undocumented) + static readonly MUC = 82; + // (undocumented) + name(): NameContext; + // (undocumented) + static readonly NewLine = 7; + // (undocumented) + static readonly NLC = 57; + // (undocumented) + non_capture(): Non_captureContext; + // (undocumented) + non_close_paren(): Non_close_parenContext; + // (undocumented) + non_close_parens(): Non_close_parensContext; + // (undocumented) + static readonly NotDecimalDigit = 14; + // (undocumented) + static readonly NotWhiteSpace = 18; + // (undocumented) + static readonly NotWordChar = 20; + // (undocumented) + static readonly NUC = 83; + // (undocumented) + number(): NumberContext; + // (undocumented) + octal_char(): Octal_charContext; + // (undocumented) + octal_digit(): Octal_digitContext; + // (undocumented) + static readonly OLC = 58; + // (undocumented) + static readonly OpenBrace = 28; + // (undocumented) + static readonly OpenParen = 33; + // (undocumented) + option(): OptionContext; + // (undocumented) + option_flag(): Option_flagContext; + // (undocumented) + static readonly OtherChar = 106; + // (undocumented) + static readonly OUC = 84; + // (undocumented) + parse(): ParseContext; + // (undocumented) + static readonly Pipe = 32; + // (undocumented) + static readonly PLC = 59; + // (undocumented) + static readonly Plus = 26; + // (undocumented) + static readonly PUC = 85; + // (undocumented) + static readonly QLC = 60; + // (undocumented) + quantifier(): QuantifierContext; + // (undocumented) + quantifier_type(): Quantifier_typeContext; + // (undocumented) + static readonly QUC = 86; + // (undocumented) + static readonly QuestionMark = 25; + // (undocumented) + static readonly Quoted = 1; + // (undocumented) + static readonly RLC = 61; + // (undocumented) + static readonly RUC = 87; + // (undocumented) + static readonly RULE_alpha_nums = 23; + // (undocumented) + static readonly RULE_alternation = 1; + // (undocumented) + static readonly RULE_atom = 11; + // (undocumented) + static readonly RULE_capture = 7; + // (undocumented) + static readonly RULE_cc_atom = 12; + // (undocumented) + static readonly RULE_cc_literal = 15; + // (undocumented) + static readonly RULE_character_class = 6; + // (undocumented) + static readonly RULE_digit = 21; + // (undocumented) + static readonly RULE_digits = 20; + // (undocumented) + static readonly RULE_element = 3; + // (undocumented) + static readonly RULE_expr = 2; + // (undocumented) + static readonly RULE_letter = 26; + // (undocumented) + static readonly RULE_literal = 14; + // (undocumented) + static readonly RULE_name = 22; + // (undocumented) + static readonly RULE_non_capture = 8; + // (undocumented) + static readonly RULE_non_close_paren = 25; + // (undocumented) + static readonly RULE_non_close_parens = 24; + // (undocumented) + static readonly RULE_number = 17; + // (undocumented) + static readonly RULE_octal_char = 18; + // (undocumented) + static readonly RULE_octal_digit = 19; + // (undocumented) + static readonly RULE_option = 9; + // (undocumented) + static readonly RULE_option_flag = 10; + // (undocumented) + static readonly RULE_parse = 0; + // (undocumented) + static readonly RULE_quantifier = 4; + // (undocumented) + static readonly RULE_quantifier_type = 5; + // (undocumented) + static readonly RULE_shared_atom = 13; + // (undocumented) + static readonly RULE_shared_literal = 16; + // (undocumented) + static readonly ruleNames: string[]; + // (undocumented) + readonly ruleNames: string[]; + // (undocumented) + readonly serializedATN: string; + // (undocumented) + static readonly _serializedATN: string; + // (undocumented) + shared_atom(): Shared_atomContext; + // (undocumented) + shared_literal(): Shared_literalContext; + // (undocumented) + static readonly SingleQuote = 37; + // (undocumented) + static readonly SLC = 62; + // (undocumented) + static readonly Star = 27; + // (undocumented) + static readonly SUC = 88; + // (undocumented) + static readonly Tab = 9; + // (undocumented) + static readonly TLC = 63; + // (undocumented) + static readonly TUC = 89; + // (undocumented) + static readonly ULC = 64; + // (undocumented) + static readonly Underscore = 38; + // (undocumented) + static readonly UUC = 90; + // (undocumented) + static readonly VLC = 65; + // (undocumented) + static readonly VOCABULARY: Vocabulary; + // (undocumented) + readonly vocabulary: Vocabulary; + // (undocumented) + static readonly VUC = 91; + // (undocumented) + static readonly WhiteSpace = 17; + // (undocumented) + static readonly WLC = 66; + // (undocumented) + static readonly WordChar = 19; + // (undocumented) + static readonly WUC = 92; + // (undocumented) + static readonly XLC = 67; + // (undocumented) + static readonly XUC = 93; + // (undocumented) + static readonly YLC = 68; + // (undocumented) + static readonly YUC = 94; + // (undocumented) + static readonly ZLC = 69; + // (undocumented) + static readonly ZUC = 95; +} + +// @public +export interface CommonRegexVisitor extends ParseTreeVisitor { + visitAlpha_nums?: (ctx: Alpha_numsContext) => Result; + visitAlternation?: (ctx: AlternationContext) => Result; + visitAtom?: (ctx: AtomContext) => Result; + visitCapture?: (ctx: CaptureContext) => Result; + visitCc_atom?: (ctx: Cc_atomContext) => Result; + visitCc_literal?: (ctx: Cc_literalContext) => Result; + visitCharacter_class?: (ctx: Character_classContext) => Result; + visitDigit?: (ctx: DigitContext) => Result; + visitDigits?: (ctx: DigitsContext) => Result; + visitElement?: (ctx: ElementContext) => Result; + visitExpr?: (ctx: ExprContext) => Result; + visitLetter?: (ctx: LetterContext) => Result; + visitLiteral?: (ctx: LiteralContext) => Result; + visitName?: (ctx: NameContext) => Result; + visitNon_capture?: (ctx: Non_captureContext) => Result; + visitNon_close_paren?: (ctx: Non_close_parenContext) => Result; + visitNon_close_parens?: (ctx: Non_close_parensContext) => Result; + visitNumber?: (ctx: NumberContext) => Result; + visitOctal_char?: (ctx: Octal_charContext) => Result; + visitOctal_digit?: (ctx: Octal_digitContext) => Result; + visitOption?: (ctx: OptionContext) => Result; + visitOption_flag?: (ctx: Option_flagContext) => Result; + visitParse?: (ctx: ParseContext) => Result; + visitQuantifier?: (ctx: QuantifierContext) => Result; + visitQuantifier_type?: (ctx: Quantifier_typeContext) => Result; + visitShared_atom?: (ctx: Shared_atomContext) => Result; + visitShared_literal?: (ctx: Shared_literalContext) => Result; +} + +// @public +export class ComparisonEvaluator extends ExpressionEvaluator { + constructor(type: string, func: (arg0: any[]) => boolean, validator: ValidateExpressionDelegate, verify?: VerifyExpression); + } + +// @public +export class Constant extends Expression { + constructor(value: any); + deepEquals(other: Expression): boolean; + toString(): string; + value: any; + } + +// @public +export function convertCSharpDateTimeToDayjs(fmtString: string): string; + +// @public (undocumented) +export class DigitContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: CommonRegexVisitor): Result; + // (undocumented) + D0(): TerminalNode | undefined; + // (undocumented) + D1(): TerminalNode | undefined; + // (undocumented) + D2(): TerminalNode | undefined; + // (undocumented) + D3(): TerminalNode | undefined; + // (undocumented) + D4(): TerminalNode | undefined; + // (undocumented) + D5(): TerminalNode | undefined; + // (undocumented) + D6(): TerminalNode | undefined; + // (undocumented) + D7(): TerminalNode | undefined; + // (undocumented) + D8(): TerminalNode | undefined; + // (undocumented) + D9(): TerminalNode | undefined; + // (undocumented) + enterRule(listener: CommonRegexListener): void; + // (undocumented) + exitRule(listener: CommonRegexListener): void; + // (undocumented) + readonly ruleIndex: number; +} + +// @public (undocumented) +export class DigitsContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: CommonRegexVisitor): Result; + // (undocumented) + digit(): DigitContext[]; + // (undocumented) + digit(i: number): DigitContext; + // (undocumented) + enterRule(listener: CommonRegexListener): void; + // (undocumented) + exitRule(listener: CommonRegexListener): void; + // (undocumented) + readonly ruleIndex: number; +} + +// @public (undocumented) +export class ElementContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: CommonRegexVisitor): Result; + // (undocumented) + atom(): AtomContext; + // (undocumented) + enterRule(listener: CommonRegexListener): void; + // (undocumented) + exitRule(listener: CommonRegexListener): void; + // (undocumented) + quantifier(): QuantifierContext | undefined; + // (undocumented) + readonly ruleIndex: number; +} + +// @public +export class EnumExpression extends ExpressionProperty { + constructor(value: T | string | Expression); + setValue(value: T | string | Expression): void; +} + +// @public +export class EnumExpressionConverter { + constructor(enumValue: unknown); + // Warning: (ae-forgotten-export) The symbol "Input" needs to be exported by the entry point index.d.ts + convert(value: Input_3 | EnumExpression): EnumExpression; + } + +// @public +export type EvaluateExpressionDelegate = (expression: Expression, state: MemoryInterface, options: Options) => ValueWithError; + +// @public +export type EvaluatorLookup = (type: string) => ExpressionEvaluator; + +// @public (undocumented) +export class ExprContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: CommonRegexVisitor): Result; + // (undocumented) + element(): ElementContext[]; + // (undocumented) + element(i: number): ElementContext; + // (undocumented) + enterRule(listener: CommonRegexListener): void; + // (undocumented) + exitRule(listener: CommonRegexListener): void; + // (undocumented) + readonly ruleIndex: number; +} + +// @public +export class Expression { + constructor(type: string, evaluator: ExpressionEvaluator, ...children: Expression[]); + static andExpression(...children: Expression[]): Expression; + children: Expression[]; + deepEquals(other: Expression): boolean; + static equalsExpression(...children: Expression[]): Expression; + readonly evaluator: ExpressionEvaluator; + static readonly functions: FunctionTable; + static lambaExpression(func: EvaluateExpressionDelegate): Expression; + static lambda(func: (arg0: any) => any): Expression; + static lookup(functionName: string): ExpressionEvaluator; + static makeExpression(type: string, evaluator: ExpressionEvaluator, ...children: Expression[]): Expression; + static notExpression(child: Expression): Expression; + static orExpression(...children: Expression[]): Expression; + static parse(expression: string, lookup?: EvaluatorLookup): Expression; + references(): string[]; + referenceWalk(expression: Expression, extension?: (arg0: Expression) => boolean): { + path: string; + refs: Set; + }; + readonly returnType: ReturnType_2; + static setPathToValue(property: Expression, value: any): Expression; + toString(): string; + tryEvaluate(state: MemoryInterface | any, options?: Options): ValueWithError; + readonly type: string; + validate: () => void; + validateTree(): void; +} + +// @public (undocumented) +export class ExpressionAntlrLexer extends Lexer { + // (undocumented) + static __ATN: ATN; + constructor(input: CharStream); + // (undocumented) + action(_localctx: RuleContext, ruleIndex: number, actionIndex: number): void; + // (undocumented) + static readonly ARROW = 27; + // (undocumented) + static readonly ASTERISK = 6; + // (undocumented) + static readonly _ATN: ATN; + // (undocumented) + static readonly channelNames: string[]; + // (undocumented) + readonly channelNames: string[]; + // (undocumented) + static readonly CLOSE_BRACKET = 19; + // (undocumented) + static readonly CLOSE_CURLY_BRACKET = 24; + // (undocumented) + static readonly CLOSE_SQUARE_BRACKET = 22; + // (undocumented) + static readonly COLON = 26; + // (undocumented) + static readonly COMMA = 25; + // (undocumented) + static readonly DOT = 20; + // (undocumented) + static readonly DOUBLE_AND = 12; + // (undocumented) + static readonly DOUBLE_EQUAL = 9; + // (undocumented) + static readonly DOUBLE_VERTICAL_CYLINDER = 13; + // (undocumented) + static readonly ESCAPE_CHARACTER = 37; + // (undocumented) + readonly grammarFileName: string; + // (undocumented) + static readonly IDENTIFIER = 32; + // (undocumented) + ignoreWS: boolean; + // (undocumented) + static readonly INVALID_TOKEN_DEFAULT_MODE = 35; + // (undocumented) + static readonly LESS_OR_EQUAl = 16; + // (undocumented) + static readonly LESS_THAN = 14; + // (undocumented) + static readonly modeNames: string[]; + // (undocumented) + readonly modeNames: string[]; + // (undocumented) + static readonly MORE_OR_EQUAL = 17; + // (undocumented) + static readonly MORE_THAN = 15; + // (undocumented) + static readonly NEWLINE = 33; + // (undocumented) + static readonly NON = 4; + // (undocumented) + static readonly NOT_EQUAL = 10; + // (undocumented) + static readonly NULL_COALESCE = 28; + // (undocumented) + static readonly NUMBER = 30; + // (undocumented) + static readonly OPEN_BRACKET = 18; + // (undocumented) + static readonly OPEN_CURLY_BRACKET = 23; + // (undocumented) + static readonly OPEN_SQUARE_BRACKET = 21; + // (undocumented) + static readonly PERCENT = 8; + // (undocumented) + static readonly PLUS = 2; + // (undocumented) + static readonly QUESTION_MARK = 29; + // (undocumented) + static readonly ruleNames: string[]; + // (undocumented) + readonly ruleNames: string[]; + // (undocumented) + sempred(_localctx: RuleContext, ruleIndex: number, predIndex: number): boolean; + // (undocumented) + readonly serializedATN: string; + // (undocumented) + static readonly _serializedATN: string; + // (undocumented) + static readonly SINGLE_AND = 11; + // (undocumented) + static readonly SLASH = 7; + // (undocumented) + static readonly STRING = 34; + // (undocumented) + static readonly STRING_INTERPOLATION_MODE = 1; + // (undocumented) + static readonly STRING_INTERPOLATION_START = 1; + // (undocumented) + static readonly SUBSTRACT = 3; + // (undocumented) + static readonly TEMPLATE = 36; + // (undocumented) + static readonly TEXT_CONTENT = 38; + // (undocumented) + static readonly VOCABULARY: Vocabulary; + // (undocumented) + readonly vocabulary: Vocabulary; + // (undocumented) + static readonly WHITESPACE = 31; + // (undocumented) + static readonly XOR = 5; +} + +// @public (undocumented) +export class ExpressionAntlrParser extends Parser { + // (undocumented) + static __ATN: ATN; + constructor(input: TokenStream); + // (undocumented) + argsList(): ArgsListContext; + // (undocumented) + static readonly ARROW = 27; + // (undocumented) + static readonly ASTERISK = 6; + // (undocumented) + static readonly _ATN: ATN; + // (undocumented) + static readonly CLOSE_BRACKET = 19; + // (undocumented) + static readonly CLOSE_CURLY_BRACKET = 24; + // (undocumented) + static readonly CLOSE_SQUARE_BRACKET = 22; + // (undocumented) + static readonly COLON = 26; + // (undocumented) + static readonly COMMA = 25; + // (undocumented) + static readonly DOT = 20; + // (undocumented) + static readonly DOUBLE_AND = 12; + // (undocumented) + static readonly DOUBLE_EQUAL = 9; + // (undocumented) + static readonly DOUBLE_VERTICAL_CYLINDER = 13; + // (undocumented) + static readonly ESCAPE_CHARACTER = 37; + // (undocumented) + expression(): ExpressionContext; + // (undocumented) + expression(_p: number): ExpressionContext; + // (undocumented) + file(): FileContext; + // (undocumented) + readonly grammarFileName: string; + // (undocumented) + static readonly IDENTIFIER = 32; + // (undocumented) + static readonly INVALID_TOKEN_DEFAULT_MODE = 35; + // (undocumented) + key(): KeyContext; + // (undocumented) + keyValuePair(): KeyValuePairContext; + // (undocumented) + keyValuePairList(): KeyValuePairListContext; + // (undocumented) + lambda(): LambdaContext; + // (undocumented) + static readonly LESS_OR_EQUAl = 16; + // (undocumented) + static readonly LESS_THAN = 14; + // (undocumented) + static readonly MORE_OR_EQUAL = 17; + // (undocumented) + static readonly MORE_THAN = 15; + // (undocumented) + static readonly NEWLINE = 33; + // (undocumented) + static readonly NON = 4; + // (undocumented) + static readonly NOT_EQUAL = 10; + // (undocumented) + static readonly NULL_COALESCE = 28; + // (undocumented) + static readonly NUMBER = 30; + // (undocumented) + static readonly OPEN_BRACKET = 18; + // (undocumented) + static readonly OPEN_CURLY_BRACKET = 23; + // (undocumented) + static readonly OPEN_SQUARE_BRACKET = 21; + // (undocumented) + static readonly PERCENT = 8; + // (undocumented) + static readonly PLUS = 2; + // (undocumented) + primaryExpression(): PrimaryExpressionContext; + // (undocumented) + primaryExpression(_p: number): PrimaryExpressionContext; + // (undocumented) + static readonly QUESTION_MARK = 29; + // (undocumented) + static readonly RULE_argsList = 5; + // (undocumented) + static readonly RULE_expression = 1; + // (undocumented) + static readonly RULE_file = 0; + // (undocumented) + static readonly RULE_key = 9; + // (undocumented) + static readonly RULE_keyValuePair = 8; + // (undocumented) + static readonly RULE_keyValuePairList = 7; + // (undocumented) + static readonly RULE_lambda = 6; + // (undocumented) + static readonly RULE_primaryExpression = 2; + // (undocumented) + static readonly RULE_stringInterpolation = 3; + // (undocumented) + static readonly RULE_textContent = 4; + // (undocumented) + static readonly ruleNames: string[]; + // (undocumented) + readonly ruleNames: string[]; + // (undocumented) + sempred(_localctx: RuleContext, ruleIndex: number, predIndex: number): boolean; + // (undocumented) + readonly serializedATN: string; + // (undocumented) + static readonly _serializedATN: string; + // (undocumented) + static readonly SINGLE_AND = 11; + // (undocumented) + static readonly SLASH = 7; + // (undocumented) + static readonly STRING = 34; + // (undocumented) + static readonly STRING_INTERPOLATION_START = 1; + // (undocumented) + stringInterpolation(): StringInterpolationContext; + // (undocumented) + static readonly SUBSTRACT = 3; + // (undocumented) + static readonly TEMPLATE = 36; + // (undocumented) + static readonly TEXT_CONTENT = 38; + // (undocumented) + textContent(): TextContentContext; + // (undocumented) + static readonly VOCABULARY: Vocabulary; + // (undocumented) + readonly vocabulary: Vocabulary; + // (undocumented) + static readonly WHITESPACE = 31; + // (undocumented) + static readonly XOR = 5; +} + +// @public +export interface ExpressionAntlrParserListener extends ParseTreeListener { + enterArgsList?: (ctx: ArgsListContext) => void; + enterArrayCreationExp?: (ctx: ArrayCreationExpContext) => void; + enterBinaryOpExp?: (ctx: BinaryOpExpContext) => void; + enterExpression?: (ctx: ExpressionContext) => void; + enterFile?: (ctx: FileContext) => void; + enterFuncInvokeExp?: (ctx: FuncInvokeExpContext) => void; + enterIdAtom?: (ctx: IdAtomContext) => void; + enterIndexAccessExp?: (ctx: IndexAccessExpContext) => void; + enterJsonCreationExp?: (ctx: JsonCreationExpContext) => void; + enterKey?: (ctx: KeyContext) => void; + enterKeyValuePair?: (ctx: KeyValuePairContext) => void; + enterKeyValuePairList?: (ctx: KeyValuePairListContext) => void; + enterLambda?: (ctx: LambdaContext) => void; + enterMemberAccessExp?: (ctx: MemberAccessExpContext) => void; + enterNumericAtom?: (ctx: NumericAtomContext) => void; + enterParenthesisExp?: (ctx: ParenthesisExpContext) => void; + enterPrimaryExp?: (ctx: PrimaryExpContext) => void; + enterPrimaryExpression?: (ctx: PrimaryExpressionContext) => void; + enterStringAtom?: (ctx: StringAtomContext) => void; + enterStringInterpolation?: (ctx: StringInterpolationContext) => void; + enterStringInterpolationAtom?: (ctx: StringInterpolationAtomContext) => void; + enterTextContent?: (ctx: TextContentContext) => void; + enterTripleOpExp?: (ctx: TripleOpExpContext) => void; + enterUnaryOpExp?: (ctx: UnaryOpExpContext) => void; + exitArgsList?: (ctx: ArgsListContext) => void; + exitArrayCreationExp?: (ctx: ArrayCreationExpContext) => void; + exitBinaryOpExp?: (ctx: BinaryOpExpContext) => void; + exitExpression?: (ctx: ExpressionContext) => void; + exitFile?: (ctx: FileContext) => void; + exitFuncInvokeExp?: (ctx: FuncInvokeExpContext) => void; + exitIdAtom?: (ctx: IdAtomContext) => void; + exitIndexAccessExp?: (ctx: IndexAccessExpContext) => void; + exitJsonCreationExp?: (ctx: JsonCreationExpContext) => void; + exitKey?: (ctx: KeyContext) => void; + exitKeyValuePair?: (ctx: KeyValuePairContext) => void; + exitKeyValuePairList?: (ctx: KeyValuePairListContext) => void; + exitLambda?: (ctx: LambdaContext) => void; + exitMemberAccessExp?: (ctx: MemberAccessExpContext) => void; + exitNumericAtom?: (ctx: NumericAtomContext) => void; + exitParenthesisExp?: (ctx: ParenthesisExpContext) => void; + exitPrimaryExp?: (ctx: PrimaryExpContext) => void; + exitPrimaryExpression?: (ctx: PrimaryExpressionContext) => void; + exitStringAtom?: (ctx: StringAtomContext) => void; + exitStringInterpolation?: (ctx: StringInterpolationContext) => void; + exitStringInterpolationAtom?: (ctx: StringInterpolationAtomContext) => void; + exitTextContent?: (ctx: TextContentContext) => void; + exitTripleOpExp?: (ctx: TripleOpExpContext) => void; + exitUnaryOpExp?: (ctx: UnaryOpExpContext) => void; +} + +// @public +export interface ExpressionAntlrParserVisitor extends ParseTreeVisitor { + visitArgsList?: (ctx: ArgsListContext) => Result; + visitArrayCreationExp?: (ctx: ArrayCreationExpContext) => Result; + visitBinaryOpExp?: (ctx: BinaryOpExpContext) => Result; + visitExpression?: (ctx: ExpressionContext) => Result; + visitFile?: (ctx: FileContext) => Result; + visitFuncInvokeExp?: (ctx: FuncInvokeExpContext) => Result; + visitIdAtom?: (ctx: IdAtomContext) => Result; + visitIndexAccessExp?: (ctx: IndexAccessExpContext) => Result; + visitJsonCreationExp?: (ctx: JsonCreationExpContext) => Result; + visitKey?: (ctx: KeyContext) => Result; + visitKeyValuePair?: (ctx: KeyValuePairContext) => Result; + visitKeyValuePairList?: (ctx: KeyValuePairListContext) => Result; + visitLambda?: (ctx: LambdaContext) => Result; + visitMemberAccessExp?: (ctx: MemberAccessExpContext) => Result; + visitNumericAtom?: (ctx: NumericAtomContext) => Result; + visitParenthesisExp?: (ctx: ParenthesisExpContext) => Result; + visitPrimaryExp?: (ctx: PrimaryExpContext) => Result; + visitPrimaryExpression?: (ctx: PrimaryExpressionContext) => Result; + visitStringAtom?: (ctx: StringAtomContext) => Result; + visitStringInterpolation?: (ctx: StringInterpolationContext) => Result; + visitStringInterpolationAtom?: (ctx: StringInterpolationAtomContext) => Result; + visitTextContent?: (ctx: TextContentContext) => Result; + visitTripleOpExp?: (ctx: TripleOpExpContext) => Result; + visitUnaryOpExp?: (ctx: UnaryOpExpContext) => Result; +} + +// @public (undocumented) +export class ExpressionContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + copyFrom(ctx: ExpressionContext): void; + // (undocumented) + readonly ruleIndex: number; +} + +// @public +export class ExpressionConverter { + convert(value: string | Expression): Expression; +} + +// @public +export class ExpressionEvaluator { + constructor(type: string, evaluator: EvaluateExpressionDelegate, returnType?: ReturnType_2, validator?: ValidateExpressionDelegate); + negation: ExpressionEvaluator; + returnType: ReturnType_2; + tryEvaluate: (expression: Expression, state: MemoryInterface, options: Options) => ValueWithError; + type: string; + validateExpression: (expression: Expression) => void; + } + +// @public +export class ExpressionFunctions { + static readonly standardFunctions: ReadonlyMap; +} + +// @public +export class ExpressionParser implements ExpressionParserInterface { + constructor(lookup?: EvaluatorLookup); + protected static antlrParse(expression: string): ParseTree; + readonly EvaluatorLookup: EvaluatorLookup; + parse(expression: string): Expression; +} + +// @public +export interface ExpressionParserInterface { + parse(expression: string): Expression; +} + +// @public +export class ExpressionProperty { + constructor(value?: T | string | Expression, defaultValue?: T); + expressionText: string; + getValue(data: object): T; + setValue(value: T | string | Expression): void; + toExpression(): Expression; + toString(): string; + tryGetValue(data: object): { + value: T; + error: Error; + }; + value: T; +} + +// @public +export class ExpressionType { + // (undocumented) + static readonly Abs: string; + // (undocumented) + static readonly Accessor: string; + // (undocumented) + static readonly Add: string; + // (undocumented) + static readonly AddDays: string; + // (undocumented) + static readonly AddHours: string; + // (undocumented) + static readonly AddMinutes: string; + // (undocumented) + static readonly AddOrdinal: string; + // (undocumented) + static readonly AddProperty: string; + // (undocumented) + static readonly AddSeconds: string; + // (undocumented) + static readonly AddToTime: string; + // (undocumented) + static readonly All: string; + // (undocumented) + static readonly And: string; + // (undocumented) + static readonly Any: string; + // (undocumented) + static readonly Average: string; + // (undocumented) + static readonly Base64: string; + // (undocumented) + static readonly Base64ToBinary: string; + // (undocumented) + static readonly Base64ToString: string; + // (undocumented) + static readonly Binary: string; + // (undocumented) + static readonly Bool: string; + // (undocumented) + static readonly Ceiling: string; + // (undocumented) + static readonly Coalesce: string; + // (undocumented) + static readonly Concat: string; + // (undocumented) + static readonly Constant: string; + // (undocumented) + static readonly Contains: string; + // (undocumented) + static readonly ConvertFromUTC: string; + // (undocumented) + static readonly ConvertToUTC: string; + // (undocumented) + static readonly Count: string; + // (undocumented) + static readonly CountWord: string; + // (undocumented) + static readonly CreateArray: string; + // (undocumented) + static readonly DataUri: string; + // (undocumented) + static readonly DataUriToBinary: string; + // (undocumented) + static readonly DataUriToString: string; + // (undocumented) + static readonly Date: string; + // (undocumented) + static readonly DateReadBack: string; + // (undocumented) + static readonly DateTimeDiff: string; + // (undocumented) + static readonly DayOfMonth: string; + // (undocumented) + static readonly DayOfWeek: string; + // (undocumented) + static readonly DayOfYear: string; + // (undocumented) + static readonly Divide: string; + // (undocumented) + static readonly Element: string; + // (undocumented) + static readonly Empty: string; + // (undocumented) + static readonly EndsWith: string; + // (undocumented) + static readonly EOL: string; + // (undocumented) + static readonly Equal: string; + // (undocumented) + static readonly Exists: string; + // (undocumented) + static readonly FilterNotEqual: string; + // (undocumented) + static readonly First: string; + // (undocumented) + static readonly Flatten: string; + // (undocumented) + static readonly Float: string; + // (undocumented) + static readonly Floor: string; + // (undocumented) + static readonly Foreach: string; + // (undocumented) + static readonly FormatDateTime: string; + // (undocumented) + static readonly FormatEpoch: string; + // (undocumented) + static readonly FormatNumber: string; + // (undocumented) + static readonly FormatTicks: string; + // (undocumented) + static readonly GetFutureTime: string; + // (undocumented) + static readonly GetNextViableDate: string; + // (undocumented) + static readonly GetNextViableTime: string; + // (undocumented) + static readonly GetPastTime: string; + // (undocumented) + static readonly GetPreviousViableDate: string; + // (undocumented) + static readonly GetPreviousViableTime: string; + // (undocumented) + static readonly GetProperty: string; + // (undocumented) + static readonly GetTimeOfDay: string; + // (undocumented) + static readonly GreaterThan: string; + // (undocumented) + static readonly GreaterThanOrEqual: string; + // (undocumented) + static readonly If: string; + // (undocumented) + static readonly Ignore: string; + // (undocumented) + static readonly IndexOf: string; + // (undocumented) + static readonly IndicesAndValues: string; + // (undocumented) + static readonly Int: string; + // (undocumented) + static readonly Intersection: string; + // (undocumented) + static readonly IsArray: string; + // (undocumented) + static readonly IsBoolean: string; + // (undocumented) + static readonly IsDate: string; + // (undocumented) + static readonly IsDateRange: string; + // (undocumented) + static readonly IsDateTime: string; + // (undocumented) + static readonly IsDefinite: string; + // (undocumented) + static readonly IsDuration: string; + // (undocumented) + static readonly IsFloat: string; + // (undocumented) + static readonly IsInteger: string; + // (undocumented) + static readonly IsMatch: string; + // (undocumented) + static readonly IsObject: string; + // (undocumented) + static readonly IsPresent: string; + // (undocumented) + static readonly IsString: string; + // (undocumented) + static readonly IsTime: string; + // (undocumented) + static readonly IsTimeRange: string; + // (undocumented) + static readonly Join: string; + // (undocumented) + static readonly JPath: string; + // (undocumented) + static readonly Json: string; + // (undocumented) + static readonly JsonStringify: string; + // (undocumented) + static readonly Lambda: string; + // (undocumented) + static readonly Last: string; + // (undocumented) + static readonly LastIndexOf: string; + // (undocumented) + static readonly Length: string; + // (undocumented) + static readonly LessThan: string; + // (undocumented) + static readonly LessThanOrEqual: string; + // (undocumented) + static readonly Max: string; + // (undocumented) + static readonly Merge: string; + // (undocumented) + static readonly Min: string; + // (undocumented) + static readonly Mod: string; + // (undocumented) + static readonly Month: string; + // (undocumented) + static readonly Multiply: string; + // (undocumented) + static readonly NewGuid: string; + // (undocumented) + static readonly Not: string; + // (undocumented) + static readonly NotEqual: string; + // (undocumented) + static readonly Optional: string; + // (undocumented) + static readonly Or: string; + // (undocumented) + static readonly Power: string; + // (undocumented) + static readonly Rand: string; + // (undocumented) + static readonly Range: string; + // (undocumented) + static readonly RemoveProperty: string; + // (undocumented) + static readonly Replace: string; + // (undocumented) + static readonly ReplaceIgnoreCase: string; + // (undocumented) + static readonly Reverse: string; + // (undocumented) + static readonly Round: string; + // (undocumented) + static readonly Select: string; + // (undocumented) + static readonly SentenceCase: string; + // (undocumented) + static readonly SetPathToValue: string; + // (undocumented) + static readonly SetProperty: string; + // (undocumented) + static readonly Skip: string; + // (undocumented) + static readonly SortBy: string; + // (undocumented) + static readonly SortByDescending: string; + // (undocumented) + static readonly Split: string; + // (undocumented) + static readonly Sqrt: string; + // (undocumented) + static readonly StartOfDay: string; + // (undocumented) + static readonly StartOfHour: string; + // (undocumented) + static readonly StartOfMonth: string; + // (undocumented) + static readonly StartsWith: string; + // (undocumented) + static readonly String: string; + // (undocumented) + static readonly StringOrValue: string; + // (undocumented) + static readonly SubArray: string; + // (undocumented) + static readonly Substring: string; + // (undocumented) + static readonly Subtract: string; + // (undocumented) + static readonly SubtractFromTime: string; + // (undocumented) + static readonly Sum: string; + // (undocumented) + static readonly Take: string; + // (undocumented) + static readonly Ticks: string; + // (undocumented) + static readonly TicksToDays: string; + // (undocumented) + static readonly TicksToHours: string; + // (undocumented) + static readonly TicksToMinutes: string; + // (undocumented) + static readonly TimexResolve: string; + // (undocumented) + static readonly TitleCase: string; + // (undocumented) + static readonly ToLower: string; + // (undocumented) + static readonly ToUpper: string; + // (undocumented) + static readonly Trim: string; + // (undocumented) + static readonly Union: string; + // (undocumented) + static readonly Unique: string; + // (undocumented) + static readonly UriComponent: string; + // (undocumented) + static readonly UriComponentToString: string; + // (undocumented) + static readonly UriHost: string; + // (undocumented) + static readonly UriPath: string; + // (undocumented) + static readonly UriPathAndQuery: string; + // (undocumented) + static readonly UriPort: string; + // (undocumented) + static readonly UriQuery: string; + // (undocumented) + static readonly UriScheme: string; + // (undocumented) + static readonly UtcNow: string; + // (undocumented) + static readonly Where: string; + // (undocumented) + static readonly XML: string; + // (undocumented) + static readonly XPath: string; + // (undocumented) + static readonly Year: string; +} + +// @public +export class Extensions { + static isMemoryInterface(obj: any): boolean; + static randomNext(memory: MemoryInterface, min: number, max: number): number; +} + +// @public (undocumented) +export class FileContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: ExpressionAntlrParserVisitor): Result; + // (undocumented) + enterRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + EOF(): TerminalNode; + // (undocumented) + exitRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + expression(): ExpressionContext; + // (undocumented) + readonly ruleIndex: number; +} + +// @public (undocumented) +export class FuncInvokeExpContext extends PrimaryExpressionContext { + constructor(ctx: PrimaryExpressionContext); + // (undocumented) + accept(visitor: ExpressionAntlrParserVisitor): Result; + // (undocumented) + argsList(): ArgsListContext | undefined; + // (undocumented) + CLOSE_BRACKET(): TerminalNode; + // (undocumented) + enterRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + exitRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + NON(): TerminalNode | undefined; + // (undocumented) + OPEN_BRACKET(): TerminalNode; + // (undocumented) + primaryExpression(): PrimaryExpressionContext; +} + +// @public +export class FunctionTable implements Map { + readonly [Symbol.iterator]: () => IterableIterator<[string, ExpressionEvaluator]>; + readonly [Symbol.toStringTag]: string; + // (undocumented) + add(item: { + key: string; + value: ExpressionEvaluator; + }): void; + // (undocumented) + add(key: string, value: ExpressionEvaluator): void; + // Warning: (ae-forgotten-export) The symbol "customFunction" needs to be exported by the entry point index.d.ts + // + // (undocumented) + add(key: string, value: customFunction): void; + clear(): void; + delete(key: string): boolean; + entries(): IterableIterator<[string, ExpressionEvaluator]>; + forEach(_callbackfn: (value: ExpressionEvaluator, key: string, map: Map) => void, _thisArg?: any): void; + get(key: string): ExpressionEvaluator; + has(key: string): boolean; + readonly isReadOnly: boolean; + keys(): IterableIterator; + set(key: string, value: ExpressionEvaluator): this; + readonly size: number; + values(): IterableIterator; +} + +// @public +export class FunctionUtils { + static apply(func: (arg0: unknown[]) => unknown, verify?: VerifyExpression): EvaluateExpressionDelegate; + static applySequence(func: (arg0: any[]) => any, verify?: VerifyExpression): EvaluateExpressionDelegate; + static applySequenceWithError(func: (arg0: any[]) => any, verify?: VerifyExpression): EvaluateExpressionDelegate; + static applyWithError(func: (arg0: any[]) => ValueWithError, verify?: VerifyExpression): EvaluateExpressionDelegate; + static applyWithOptions(func: (arg0: unknown[], options: Options) => unknown, verify?: VerifyExpression): EvaluateExpressionDelegate; + static applyWithOptionsAndError(func: (arg0: unknown[], options: Options) => { + value: unknown; + error: string; + }, verify?: VerifyExpression): EvaluateExpressionDelegate; + static commonEquals(obj1: unknown, obj2: unknown): boolean; + static readonly DefaultDateTimeFormat: string; + // (undocumented) + static determineFormatAndLocale(args: unknown[], maxArgsLength: number, format: string, locale?: string): { + format: string; + locale: string; + }; + // (undocumented) + static determineLocale(args: unknown[], maxArgsLength: number, locale?: string): string; + static evaluateChildren(expression: Expression, state: MemoryInterface, options: Options, verify?: VerifyExpression): { + args: any[]; + error: string; + }; + static isNumber(instance: any): instance is number; + static timestampFormatter(formatter: string): string; + static tryAccumulatePath(expression: Expression, state: MemoryInterface, options: Options): { + path: string; + left: any; + error: string; + }; + static validateArityAndAnyType(expression: Expression, minArity: number, maxArity: number, returnType?: ReturnType_2): void; + static validateAtLeastOne(expression: Expression): void; + static validateBinary(expression: Expression): void; + static validateBinaryNumber(expression: Expression): void; + static validateBinaryNumberOrString(expression: Expression): void; + static validateNumber(expression: Expression): void; + static validateOrder(expression: Expression, optional: ReturnType_2[], ...types: ReturnType_2[]): void; + static validateString(expression: Expression): void; + static validateTwoOrMoreThanTwoNumbers(expression: Expression): void; + static validateUnary(expression: Expression): void; + static validateUnaryBoolean(expression: Expression): void; + static validateUnaryNumber(expression: Expression): void; + static validateUnaryOrBinaryNumber(expression: Expression): void; + static validateUnaryOrBinaryString(expression: Expression): void; + static validateUnaryString(expression: Expression): void; + static verifyBoolean(value: any, expression: Expression, _: number): string | undefined; + static verifyContainer(value: any, expression: Expression, _: number): string | undefined; + static verifyContainerOrNull(value: unknown, expression: Expression, _: number): string | undefined; + static verifyInteger(value: any, expression: Expression, _: number): string | undefined; + static verifyList(value: any, expression: Expression): string | undefined; + static verifyNotNull(value: any, expression: Expression, _: number): string | undefined; + static verifyNumber(value: any, expression: Expression, _: number): string | undefined; + static verifyNumberOrNumericList(value: any, expression: Expression, _: number): string | undefined; + static verifyNumberOrString(value: any, expression: Expression, _: number): string | undefined; + static verifyNumberOrStringOrNull(value: any, expression: Expression, _: number): string | undefined; + static verifyNumericList(value: any, expression: Expression, _: number): string | undefined; + static verifyString(value: any, expression: Expression, _: number): string | undefined; + static verifyStringOrNull(value: any, expression: Expression, _: number): string | undefined; +} + +// @public (undocumented) +export class IdAtomContext extends PrimaryExpressionContext { + constructor(ctx: PrimaryExpressionContext); + // (undocumented) + accept(visitor: ExpressionAntlrParserVisitor): Result; + // (undocumented) + enterRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + exitRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + IDENTIFIER(): TerminalNode; +} + +// @public (undocumented) +export class IndexAccessExpContext extends PrimaryExpressionContext { + constructor(ctx: PrimaryExpressionContext); + // (undocumented) + accept(visitor: ExpressionAntlrParserVisitor): Result; + // (undocumented) + CLOSE_SQUARE_BRACKET(): TerminalNode; + // (undocumented) + enterRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + exitRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + expression(): ExpressionContext; + // (undocumented) + OPEN_SQUARE_BRACKET(): TerminalNode; + // (undocumented) + primaryExpression(): PrimaryExpressionContext; +} + +// @public +export class IntExpression extends ExpressionProperty { + constructor(value?: number | string | Expression); + setValue(value: number | string | Expression): void; + tryGetValue(data: object): { + value: number; + error: Error; + }; +} + +// @public +export class IntExpressionConverter { + // Warning: (ae-forgotten-export) The symbol "Input" needs to be exported by the entry point index.d.ts + convert(value: Input_4 | IntExpression): IntExpression; +} + +// @public (undocumented) +export class JsonCreationExpContext extends PrimaryExpressionContext { + constructor(ctx: PrimaryExpressionContext); + // (undocumented) + accept(visitor: ExpressionAntlrParserVisitor): Result; + // (undocumented) + CLOSE_CURLY_BRACKET(): TerminalNode; + // (undocumented) + enterRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + exitRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + keyValuePairList(): KeyValuePairListContext | undefined; + // (undocumented) + OPEN_CURLY_BRACKET(): TerminalNode; +} + +// @public (undocumented) +export class KeyContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: ExpressionAntlrParserVisitor): Result; + // (undocumented) + enterRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + exitRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + IDENTIFIER(): TerminalNode | undefined; + // (undocumented) + readonly ruleIndex: number; + // (undocumented) + STRING(): TerminalNode | undefined; +} + +// @public (undocumented) +export class KeyValuePairContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: ExpressionAntlrParserVisitor): Result; + // (undocumented) + COLON(): TerminalNode; + // (undocumented) + enterRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + exitRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + expression(): ExpressionContext; + // (undocumented) + key(): KeyContext; + // (undocumented) + readonly ruleIndex: number; +} + +// @public (undocumented) +export class KeyValuePairListContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: ExpressionAntlrParserVisitor): Result; + // (undocumented) + COMMA(): TerminalNode[]; + // (undocumented) + COMMA(i: number): TerminalNode; + // (undocumented) + enterRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + exitRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + keyValuePair(): KeyValuePairContext[]; + // (undocumented) + keyValuePair(i: number): KeyValuePairContext; + // (undocumented) + readonly ruleIndex: number; +} + +// @public (undocumented) +export class LambdaContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: ExpressionAntlrParserVisitor): Result; + // (undocumented) + ARROW(): TerminalNode; + // (undocumented) + enterRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + exitRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + expression(): ExpressionContext; + // (undocumented) + IDENTIFIER(): TerminalNode; + // (undocumented) + readonly ruleIndex: number; +} + +// @public (undocumented) +export class LetterContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: CommonRegexVisitor): Result; + // (undocumented) + ALC(): TerminalNode | undefined; + // (undocumented) + AUC(): TerminalNode | undefined; + // (undocumented) + BLC(): TerminalNode | undefined; + // (undocumented) + BUC(): TerminalNode | undefined; + // (undocumented) + CLC(): TerminalNode | undefined; + // (undocumented) + CUC(): TerminalNode | undefined; + // (undocumented) + DLC(): TerminalNode | undefined; + // (undocumented) + DUC(): TerminalNode | undefined; + // (undocumented) + ELC(): TerminalNode | undefined; + // (undocumented) + enterRule(listener: CommonRegexListener): void; + // (undocumented) + EUC(): TerminalNode | undefined; + // (undocumented) + exitRule(listener: CommonRegexListener): void; + // (undocumented) + FLC(): TerminalNode | undefined; + // (undocumented) + FUC(): TerminalNode | undefined; + // (undocumented) + GLC(): TerminalNode | undefined; + // (undocumented) + GUC(): TerminalNode | undefined; + // (undocumented) + HLC(): TerminalNode | undefined; + // (undocumented) + HUC(): TerminalNode | undefined; + // (undocumented) + ILC(): TerminalNode | undefined; + // (undocumented) + IUC(): TerminalNode | undefined; + // (undocumented) + JLC(): TerminalNode | undefined; + // (undocumented) + JUC(): TerminalNode | undefined; + // (undocumented) + KLC(): TerminalNode | undefined; + // (undocumented) + KUC(): TerminalNode | undefined; + // (undocumented) + LLC(): TerminalNode | undefined; + // (undocumented) + LUC(): TerminalNode | undefined; + // (undocumented) + MLC(): TerminalNode | undefined; + // (undocumented) + MUC(): TerminalNode | undefined; + // (undocumented) + NLC(): TerminalNode | undefined; + // (undocumented) + NUC(): TerminalNode | undefined; + // (undocumented) + OLC(): TerminalNode | undefined; + // (undocumented) + OUC(): TerminalNode | undefined; + // (undocumented) + PLC(): TerminalNode | undefined; + // (undocumented) + PUC(): TerminalNode | undefined; + // (undocumented) + QLC(): TerminalNode | undefined; + // (undocumented) + QUC(): TerminalNode | undefined; + // (undocumented) + RLC(): TerminalNode | undefined; + // (undocumented) + RUC(): TerminalNode | undefined; + // (undocumented) + readonly ruleIndex: number; + // (undocumented) + SLC(): TerminalNode | undefined; + // (undocumented) + SUC(): TerminalNode | undefined; + // (undocumented) + TLC(): TerminalNode | undefined; + // (undocumented) + TUC(): TerminalNode | undefined; + // (undocumented) + ULC(): TerminalNode | undefined; + // (undocumented) + UUC(): TerminalNode | undefined; + // (undocumented) + VLC(): TerminalNode | undefined; + // (undocumented) + VUC(): TerminalNode | undefined; + // (undocumented) + WLC(): TerminalNode | undefined; + // (undocumented) + WUC(): TerminalNode | undefined; + // (undocumented) + XLC(): TerminalNode | undefined; + // (undocumented) + XUC(): TerminalNode | undefined; + // (undocumented) + YLC(): TerminalNode | undefined; + // (undocumented) + YUC(): TerminalNode | undefined; + // (undocumented) + ZLC(): TerminalNode | undefined; + // (undocumented) + ZUC(): TerminalNode | undefined; +} + +// @public (undocumented) +export class LiteralContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: CommonRegexVisitor): Result; + // (undocumented) + CharacterClassEnd(): TerminalNode | undefined; + // (undocumented) + enterRule(listener: CommonRegexListener): void; + // (undocumented) + exitRule(listener: CommonRegexListener): void; + // (undocumented) + readonly ruleIndex: number; + // (undocumented) + shared_literal(): Shared_literalContext | undefined; +} + +// @public +export const localeInfo: { + 'ar-MA': { + currency: string[]; + decimal: string; + thousands: string; + grouping: number[]; + }; + 'en-IN': { + currency: string[]; + decimal: string; + thousands: string; + grouping: number[]; + }; + 'ar-BH': { + currency: string[]; + decimal: string; + thousands: string; + numerals: string[]; + grouping: number[]; + }; + 'ar-PS': { + currency: string[]; + decimal: string; + thousands: string; + numerals: string[]; + grouping: number[]; + }; + 'en-IE': { + currency: string[]; + decimal: string; + thousands: string; + grouping: number[]; + }; + 'it-IT': { + currency: string[]; + decimal: string; + thousands: string; + grouping: number[]; + }; + 'ar-EG': { + currency: string[]; + decimal: string; + thousands: string; + numerals: string[]; + grouping: number[]; + }; + 'ar-IQ': { + currency: string[]; + decimal: string; + thousands: string; + numerals: string[]; + grouping: number[]; + }; + 'ar-EH': { + currency: string[]; + decimal: string; + thousands: string; + grouping: number[]; + }; + 'ar-AE': { + currency: string[]; + decimal: string; + thousands: string; + numerals: string[]; + grouping: number[]; + }; + 'ar-MR': { + currency: string[]; + decimal: string; + thousands: string; + numerals: string[]; + grouping: number[]; + }; + 'uk-UA': { + currency: string[]; + decimal: string; + thousands: string; + grouping: number[]; + }; + 'ca-ES': { + currency: string[]; + decimal: string; + thousands: string; + grouping: number[]; + }; + 'sv-SE': { + currency: string[]; + decimal: string; + thousands: string; + grouping: number[]; + }; + 'ja-JP': { + currency: string[]; + decimal: string; + thousands: string; + grouping: number[]; + }; + 'es-ES': { + currency: string[]; + decimal: string; + thousands: string; + grouping: number[]; + }; + 'fi-FI': { + currency: string[]; + decimal: string; + thousands: string; + grouping: number[]; + }; + 'ar-DZ': { + currency: string[]; + decimal: string; + thousands: string; + grouping: number[]; + }; + 'en-GB': { + currency: string[]; + decimal: string; + thousands: string; + grouping: number[]; + }; + 'cs-CZ': { + currency: string[]; + decimal: string; + thousands: string; + grouping: number[]; + }; + 'ar-TD': { + currency: string[]; + decimal: string; + thousands: string; + numerals: string[]; + grouping: number[]; + }; + 'de-CH': { + currency: string[]; + decimal: string; + thousands: string; + grouping: number[]; + }; + 'nl-NL': { + currency: string[]; + decimal: string; + thousands: string; + grouping: number[]; + }; + 'es-BO': { + currency: string[]; + decimal: string; + percent: string; + thousands: string; + grouping: number[]; + }; + 'ar-SY': { + currency: string[]; + decimal: string; + thousands: string; + numerals: string[]; + grouping: number[]; + }; + 'ar-JO': { + currency: string[]; + decimal: string; + thousands: string; + numerals: string[]; + grouping: number[]; + }; + 'en-CA': { + currency: string[]; + decimal: string; + thousands: string; + grouping: number[]; + }; + 'ar-ER': { + currency: string[]; + decimal: string; + thousands: string; + numerals: string[]; + grouping: number[]; + }; + 'ar-LB': { + currency: string[]; + decimal: string; + thousands: string; + numerals: string[]; + grouping: number[]; + }; + 'fr-CA': { + currency: string[]; + decimal: string; + thousands: string; + grouping: number[]; + }; + 'ar-TN': { + currency: string[]; + decimal: string; + thousands: string; + grouping: number[]; + }; + 'ar-YE': { + currency: string[]; + decimal: string; + thousands: string; + numerals: string[]; + grouping: number[]; + }; + 'ru-RU': { + currency: string[]; + decimal: string; + thousands: string; + grouping: number[]; + }; + 'en-US': { + currency: string[]; + decimal: string; + thousands: string; + grouping: number[]; + }; + 'ar-SS': { + currency: string[]; + decimal: string; + thousands: string; + numerals: string[]; + grouping: number[]; + }; + 'ar-SO': { + currency: string[]; + decimal: string; + thousands: string; + numerals: string[]; + grouping: number[]; + }; + 'hu-HU': { + currency: string[]; + decimal: string; + thousands: string; + grouping: number[]; + }; + 'pt-BR': { + currency: string[]; + decimal: string; + thousands: string; + grouping: number[]; + }; + 'ar-DJ': { + currency: string[]; + decimal: string; + thousands: string; + numerals: string[]; + grouping: number[]; + }; + 'ar-SD': { + currency: string[]; + decimal: string; + thousands: string; + numerals: string[]; + grouping: number[]; + }; + 'ar-001': { + currency: string[]; + decimal: string; + thousands: string; + numerals: string[]; + grouping: number[]; + }; + 'ar-LY': { + currency: string[]; + decimal: string; + thousands: string; + grouping: number[]; + }; + 'ar-SA': { + currency: string[]; + decimal: string; + thousands: string; + numerals: string[]; + grouping: number[]; + }; + 'ar-KW': { + currency: string[]; + decimal: string; + thousands: string; + numerals: string[]; + grouping: number[]; + }; + 'pl-PL': { + currency: string[]; + decimal: string; + thousands: string; + grouping: number[]; + }; + 'ar-QA': { + currency: string[]; + decimal: string; + thousands: string; + numerals: string[]; + grouping: number[]; + }; + 'mk-MK': { + currency: string[]; + decimal: string; + thousands: string; + grouping: number[]; + }; + 'ko-KR': { + currency: string[]; + decimal: string; + thousands: string; + grouping: number[]; + }; + 'es-MX': { + currency: string[]; + decimal: string; + thousands: string; + grouping: number[]; + }; + 'ar-IL': { + currency: string[]; + decimal: string; + thousands: string; + numerals: string[]; + grouping: number[]; + }; + 'zh-CN': { + currency: string[]; + decimal: string; + thousands: string; + grouping: number[]; + }; + 'de-DE': { + currency: string[]; + decimal: string; + thousands: string; + grouping: number[]; + }; + 'ar-OM': { + currency: string[]; + decimal: string; + thousands: string; + numerals: string[]; + grouping: number[]; + }; + 'fr-FR': { + currency: string[]; + decimal: string; + percent: string; + thousands: string; + grouping: number[]; + }; + 'ar-KM': { + currency: string[]; + decimal: string; + thousands: string; + numerals: string[]; + grouping: number[]; + }; + 'he-IL': { + currency: string[]; + decimal: string; + thousands: string; + grouping: number[]; + }; +}; + +// @public (undocumented) +export class MemberAccessExpContext extends PrimaryExpressionContext { + constructor(ctx: PrimaryExpressionContext); + // (undocumented) + accept(visitor: ExpressionAntlrParserVisitor): Result; + // (undocumented) + DOT(): TerminalNode; + // (undocumented) + enterRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + exitRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + IDENTIFIER(): TerminalNode; + // (undocumented) + primaryExpression(): PrimaryExpressionContext; +} + +// @public +export interface MemoryInterface { + getValue(path: string): any; + setValue(path: string, value: any): void; + version(): string; +} + +// @public +export class MultivariateNumericEvaluator extends ExpressionEvaluator { + constructor(type: string, func: (args: any[]) => number, verify?: VerifyExpression); + } + +// @public (undocumented) +export class NameContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: CommonRegexVisitor): Result; + // (undocumented) + alpha_nums(): Alpha_numsContext; + // (undocumented) + enterRule(listener: CommonRegexListener): void; + // (undocumented) + exitRule(listener: CommonRegexListener): void; + // (undocumented) + readonly ruleIndex: number; +} + +// @public +class Node_2 { + constructor(clause: Clause, tree: TriggerTree, trigger?: Trigger); + addNode(triggerNode: Node_2): boolean; + readonly allTriggers: Trigger[]; + clause: Clause; + matches(state: MemoryInterface | any): Trigger[]; + relationship(other: Node_2): RelationshipType; + removeTrigger(trigger: Trigger): boolean; + readonly specializations: Node_2[]; + toString(builder?: string[], indent?: number): string; + tree: TriggerTree; + readonly triggers: Trigger[]; + } + +export { Node_2 as Node } + +// @public (undocumented) +export class Non_captureContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: CommonRegexVisitor): Result; + // (undocumented) + alternation(): AlternationContext; + // (undocumented) + CloseParen(): TerminalNode; + // (undocumented) + Colon(): TerminalNode; + // (undocumented) + enterRule(listener: CommonRegexListener): void; + // (undocumented) + exitRule(listener: CommonRegexListener): void; + // (undocumented) + OpenParen(): TerminalNode; + // (undocumented) + QuestionMark(): TerminalNode; + // (undocumented) + readonly ruleIndex: number; +} + +// @public (undocumented) +export class Non_close_parenContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: CommonRegexVisitor): Result; + // (undocumented) + CloseParen(): TerminalNode; + // (undocumented) + enterRule(listener: CommonRegexListener): void; + // (undocumented) + exitRule(listener: CommonRegexListener): void; + // (undocumented) + readonly ruleIndex: number; +} + +// @public (undocumented) +export class Non_close_parensContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: CommonRegexVisitor): Result; + // (undocumented) + enterRule(listener: CommonRegexListener): void; + // (undocumented) + exitRule(listener: CommonRegexListener): void; + // (undocumented) + non_close_paren(): Non_close_parenContext[]; + // (undocumented) + non_close_paren(i: number): Non_close_parenContext; + // (undocumented) + readonly ruleIndex: number; +} + +// @public (undocumented) +export class NumberContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: CommonRegexVisitor): Result; + // (undocumented) + digits(): DigitsContext; + // (undocumented) + enterRule(listener: CommonRegexListener): void; + // (undocumented) + exitRule(listener: CommonRegexListener): void; + // (undocumented) + readonly ruleIndex: number; +} + +// @public +export class NumberExpression extends ExpressionProperty { + constructor(value?: number | string | Expression); + setValue(value: number | string | Expression): void; +} + +// @public +export class NumberExpressionConverter { + // Warning: (ae-forgotten-export) The symbol "Input" needs to be exported by the entry point index.d.ts + convert(value: Input_5 | NumberExpression): NumberExpression; +} + +// @public +export class NumberTransformEvaluator extends ExpressionEvaluator { + constructor(type: string, func: (args: any[]) => number); + } + +// @public (undocumented) +export class NumericAtomContext extends PrimaryExpressionContext { + constructor(ctx: PrimaryExpressionContext); + // (undocumented) + accept(visitor: ExpressionAntlrParserVisitor): Result; + // (undocumented) + enterRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + exitRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + NUMBER(): TerminalNode; +} + +// @public +export class NumericEvaluator extends ExpressionEvaluator { + constructor(type: string, func: (args: any[]) => any); + } + +// @public +export class ObjectExpression extends ExpressionProperty { + constructor(value?: T | string | Expression); +} + +// @public +export class ObjectExpressionConverter { + // Warning: (ae-forgotten-export) The symbol "Input" needs to be exported by the entry point index.d.ts + convert(value: Input_6 | ObjectExpression): ObjectExpression; +} + +// @public (undocumented) +export class Octal_charContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: CommonRegexVisitor): Result; + // (undocumented) + Backslash(): TerminalNode | undefined; + // (undocumented) + D0(): TerminalNode | undefined; + // (undocumented) + D1(): TerminalNode | undefined; + // (undocumented) + D2(): TerminalNode | undefined; + // (undocumented) + D3(): TerminalNode | undefined; + // (undocumented) + enterRule(listener: CommonRegexListener): void; + // (undocumented) + exitRule(listener: CommonRegexListener): void; + // (undocumented) + octal_digit(): Octal_digitContext[]; + // (undocumented) + octal_digit(i: number): Octal_digitContext; + // (undocumented) + readonly ruleIndex: number; +} + +// @public (undocumented) +export class Octal_digitContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: CommonRegexVisitor): Result; + // (undocumented) + D0(): TerminalNode | undefined; + // (undocumented) + D1(): TerminalNode | undefined; + // (undocumented) + D2(): TerminalNode | undefined; + // (undocumented) + D3(): TerminalNode | undefined; + // (undocumented) + D4(): TerminalNode | undefined; + // (undocumented) + D5(): TerminalNode | undefined; + // (undocumented) + D6(): TerminalNode | undefined; + // (undocumented) + D7(): TerminalNode | undefined; + // (undocumented) + enterRule(listener: CommonRegexListener): void; + // (undocumented) + exitRule(listener: CommonRegexListener): void; + // (undocumented) + readonly ruleIndex: number; +} + +// @public +export interface Optimizer { + optimize(clause: Clause): Clause; +} + +// @public (undocumented) +export class Option_flagContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: CommonRegexVisitor): Result; + // (undocumented) + enterRule(listener: CommonRegexListener): void; + // (undocumented) + exitRule(listener: CommonRegexListener): void; + // (undocumented) + ILC(): TerminalNode | undefined; + // (undocumented) + MLC(): TerminalNode | undefined; + // (undocumented) + readonly ruleIndex: number; + // (undocumented) + SLC(): TerminalNode | undefined; +} + +// @public (undocumented) +export class OptionContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: CommonRegexVisitor): Result; + // (undocumented) + CloseParen(): TerminalNode; + // (undocumented) + enterRule(listener: CommonRegexListener): void; + // (undocumented) + exitRule(listener: CommonRegexListener): void; + // (undocumented) + OpenParen(): TerminalNode; + // (undocumented) + option_flag(): Option_flagContext[]; + // (undocumented) + option_flag(i: number): Option_flagContext; + // (undocumented) + QuestionMark(): TerminalNode; + // (undocumented) + readonly ruleIndex: number; +} + +// @public +export class Options { + constructor(opt?: Options); + locale: string; + // (undocumented) + nullSubstitution: (path: string) => unknown; +} + +// @public (undocumented) +export class ParenthesisExpContext extends PrimaryExpressionContext { + constructor(ctx: PrimaryExpressionContext); + // (undocumented) + accept(visitor: ExpressionAntlrParserVisitor): Result; + // (undocumented) + CLOSE_BRACKET(): TerminalNode; + // (undocumented) + enterRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + exitRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + expression(): ExpressionContext; + // (undocumented) + OPEN_BRACKET(): TerminalNode; +} + +// @public (undocumented) +export class ParseContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: CommonRegexVisitor): Result; + // (undocumented) + alternation(): AlternationContext; + // (undocumented) + enterRule(listener: CommonRegexListener): void; + // (undocumented) + EOF(): TerminalNode; + // (undocumented) + exitRule(listener: CommonRegexListener): void; + // (undocumented) + readonly ruleIndex: number; +} + +// @public +export class ParseErrorListener implements ANTLRErrorListener { + // (undocumented) + static readonly Instance: ParseErrorListener; + syntaxError(_recognizer: Recognizer, _offendingSymbol: T, line: number, charPositionInLine: number, msg: string, _e: RecognitionException | undefined): void; +} + +// @public +export interface PredicateComparer { + predicate: string; + relationship(predicate: Expression, other: Expression): RelationshipType; +} + +// @public (undocumented) +export type PredicateComparers = { + [name: string]: PredicateComparer; +}; + +// @public (undocumented) +export class PrimaryExpContext extends ExpressionContext { + constructor(ctx: ExpressionContext); + // (undocumented) + accept(visitor: ExpressionAntlrParserVisitor): Result; + // (undocumented) + enterRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + exitRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + primaryExpression(): PrimaryExpressionContext; +} + +// @public (undocumented) +export class PrimaryExpressionContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + copyFrom(ctx: PrimaryExpressionContext): void; + // (undocumented) + readonly ruleIndex: number; +} + +// @public +export class Quantifier { + constructor(variable: string, type: QuantifierType, bindings: string[]); + // (undocumented) + readonly bindings: string[]; + toString(): string; + // (undocumented) + readonly type: QuantifierType; + // (undocumented) + readonly variable: string; +} + +// @public (undocumented) +export class Quantifier_typeContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: CommonRegexVisitor): Result; + // (undocumented) + enterRule(listener: CommonRegexListener): void; + // (undocumented) + exitRule(listener: CommonRegexListener): void; + // (undocumented) + Plus(): TerminalNode | undefined; + // (undocumented) + QuestionMark(): TerminalNode | undefined; + // (undocumented) + readonly ruleIndex: number; +} + +// @public (undocumented) +export class QuantifierContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: CommonRegexVisitor): Result; + // (undocumented) + CloseBrace(): TerminalNode | undefined; + // (undocumented) + Comma(): TerminalNode | undefined; + // (undocumented) + enterRule(listener: CommonRegexListener): void; + // (undocumented) + exitRule(listener: CommonRegexListener): void; + // (undocumented) + number(): NumberContext[]; + // (undocumented) + number(i: number): NumberContext; + // (undocumented) + OpenBrace(): TerminalNode | undefined; + // (undocumented) + Plus(): TerminalNode | undefined; + // (undocumented) + quantifier_type(): Quantifier_typeContext; + // (undocumented) + QuestionMark(): TerminalNode | undefined; + // (undocumented) + readonly ruleIndex: number; + // (undocumented) + Star(): TerminalNode | undefined; +} + +// @public +export enum QuantifierType { + all = "all", + any = "any" +} + +// @public +export class RegexErrorListener implements ANTLRErrorListener { + // (undocumented) + static readonly Instance: RegexErrorListener; + syntaxError(_recognizer: Recognizer, _offendingSymbol: T, _line: number, _charPositionInLine: number, _msg: string, _e: RecognitionException | undefined): void; +} + +// @public +export enum RelationshipType { + equal = "equal", + generalizes = "generalizes", + incomparable = "incomparable", + specializes = "specializes" +} + +// @public +enum ReturnType_2 { + Array = 16, + Boolean = 1, + Number = 2, + Object = 4, + String = 8 +} + +export { ReturnType_2 as ReturnType } + +// @public (undocumented) +export class Shared_atomContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: CommonRegexVisitor): Result; + // (undocumented) + CharWithoutProperty(): TerminalNode | undefined; + // (undocumented) + CharWithProperty(): TerminalNode | undefined; + // (undocumented) + ControlChar(): TerminalNode | undefined; + // (undocumented) + DecimalDigit(): TerminalNode | undefined; + // (undocumented) + enterRule(listener: CommonRegexListener): void; + // (undocumented) + exitRule(listener: CommonRegexListener): void; + // (undocumented) + NotDecimalDigit(): TerminalNode | undefined; + // (undocumented) + NotWhiteSpace(): TerminalNode | undefined; + // (undocumented) + NotWordChar(): TerminalNode | undefined; + // (undocumented) + readonly ruleIndex: number; + // (undocumented) + WhiteSpace(): TerminalNode | undefined; + // (undocumented) + WordChar(): TerminalNode | undefined; +} + +// @public (undocumented) +export class Shared_literalContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: CommonRegexVisitor): Result; + // (undocumented) + Ampersand(): TerminalNode | undefined; + // (undocumented) + BellChar(): TerminalNode | undefined; + // (undocumented) + BlockQuoted(): TerminalNode | undefined; + // (undocumented) + CarriageReturn(): TerminalNode | undefined; + // (undocumented) + CloseBrace(): TerminalNode | undefined; + // (undocumented) + Colon(): TerminalNode | undefined; + // (undocumented) + Comma(): TerminalNode | undefined; + // (undocumented) + digit(): DigitContext | undefined; + // (undocumented) + enterRule(listener: CommonRegexListener): void; + // (undocumented) + Equals(): TerminalNode | undefined; + // (undocumented) + EscapeChar(): TerminalNode | undefined; + // (undocumented) + Exclamation(): TerminalNode | undefined; + // (undocumented) + exitRule(listener: CommonRegexListener): void; + // (undocumented) + FormFeed(): TerminalNode | undefined; + // (undocumented) + GreaterThan(): TerminalNode | undefined; + // (undocumented) + Hash(): TerminalNode | undefined; + // (undocumented) + HexChar(): TerminalNode | undefined; + // (undocumented) + Hyphen(): TerminalNode | undefined; + // (undocumented) + LessThan(): TerminalNode | undefined; + // (undocumented) + letter(): LetterContext | undefined; + // (undocumented) + NewLine(): TerminalNode | undefined; + // (undocumented) + octal_char(): Octal_charContext | undefined; + // (undocumented) + OpenBrace(): TerminalNode | undefined; + // (undocumented) + OtherChar(): TerminalNode | undefined; + // (undocumented) + Quoted(): TerminalNode | undefined; + // (undocumented) + readonly ruleIndex: number; + // (undocumented) + SingleQuote(): TerminalNode | undefined; + // (undocumented) + Tab(): TerminalNode | undefined; + // (undocumented) + Underscore(): TerminalNode | undefined; +} + +// @public +export class SimpleObjectMemory implements MemoryInterface { + constructor(memory: any); + getValue(path: string): any; + setValue(path: string, input: any): void; + toString(): string; + version(): string; + static wrap(obj: any): MemoryInterface; +} + +// @public +export class StackedMemory extends Array implements MemoryInterface { + getValue(path: string): any; + setValue(_path: string, _value: any): void; + version(): string; + static wrap(memory: MemoryInterface): StackedMemory; +} + +// @public (undocumented) +export class StringAtomContext extends PrimaryExpressionContext { + constructor(ctx: PrimaryExpressionContext); + // (undocumented) + accept(visitor: ExpressionAntlrParserVisitor): Result; + // (undocumented) + enterRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + exitRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + STRING(): TerminalNode; +} + +// @public +export class StringExpression extends ExpressionProperty { + constructor(value?: string | Expression); + setValue(value: string | Expression): void; +} + +// @public +export class StringExpressionConverter { + // Warning: (ae-forgotten-export) The symbol "Input" needs to be exported by the entry point index.d.ts + convert(value: Input_7 | StringExpression): StringExpression; +} + +// @public (undocumented) +export class StringInterpolationAtomContext extends PrimaryExpressionContext { + constructor(ctx: PrimaryExpressionContext); + // (undocumented) + accept(visitor: ExpressionAntlrParserVisitor): Result; + // (undocumented) + enterRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + exitRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + stringInterpolation(): StringInterpolationContext; +} + +// @public (undocumented) +export class StringInterpolationContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: ExpressionAntlrParserVisitor): Result; + // (undocumented) + enterRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + ESCAPE_CHARACTER(): TerminalNode[]; + // (undocumented) + ESCAPE_CHARACTER(i: number): TerminalNode; + // (undocumented) + exitRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + readonly ruleIndex: number; + // (undocumented) + STRING_INTERPOLATION_START(): TerminalNode[]; + // (undocumented) + STRING_INTERPOLATION_START(i: number): TerminalNode; + // (undocumented) + TEMPLATE(): TerminalNode[]; + // (undocumented) + TEMPLATE(i: number): TerminalNode; + // (undocumented) + textContent(): TextContentContext[]; + // (undocumented) + textContent(i: number): TextContentContext; +} + +// @public +export class StringTransformEvaluator extends ExpressionEvaluator { + constructor(type: string, func: (arg0: any[], options: Options) => string, validator?: (expr: Expression) => void); +} + +// @public (undocumented) +export class TextContentContext extends ParserRuleContext { + constructor(parent: ParserRuleContext | undefined, invokingState: number); + // (undocumented) + accept(visitor: ExpressionAntlrParserVisitor): Result; + // (undocumented) + enterRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + exitRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + readonly ruleIndex: number; + // (undocumented) + TEXT_CONTENT(): TerminalNode[]; + // (undocumented) + TEXT_CONTENT(i: number): TerminalNode; +} + +// @public +export class TimeTransformEvaluator extends ExpressionEvaluator { + constructor(type: string, func: (timestamp: Date, numOfTransformation: number) => Date); + } + +// @public +export class TimeZoneConverter { + static ianaToWindows(ianaTimeZoneId: string): string; + static verifyTimeZoneStr(timezoneStr: string): boolean; + static windowsToIana(windowsTimeZoneId: string): string; + } + +// @public +export class Trigger { + constructor(tree: TriggerTree, expression?: Expression, action?: any, ...quantifiers: Quantifier[]); + readonly action: any; + readonly clauses: Clause[]; + matches(nodeClause: Clause, state: MemoryInterface | any): boolean; + readonly originalExpression: Expression; + relationship(other: Trigger, comparers: PredicateComparers): RelationshipType; + toString(builder?: string[], indent?: number): string; + } + +// @public +export class TriggerTree { + constructor(); + addTrigger(stringOrExpression: string | Expression, action: any, ...quantifiers: Quantifier[]): Trigger; + readonly comparers: PredicateComparers; + matches(state: MemoryInterface | any): Trigger[]; + readonly optimizers: Optimizer[]; + removeTrigger(trigger: Trigger): boolean; + root: Node_2; + toString(): string; + totalTriggers: number; + treeToString(indent?: number): string; + verifyTree(): Node_2; + } + +// @public (undocumented) +export class TripleOpExpContext extends ExpressionContext { + constructor(ctx: ExpressionContext); + // (undocumented) + accept(visitor: ExpressionAntlrParserVisitor): Result; + // (undocumented) + COLON(): TerminalNode; + // (undocumented) + enterRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + exitRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + expression(): ExpressionContext[]; + // (undocumented) + expression(i: number): ExpressionContext; + // (undocumented) + QUESTION_MARK(): TerminalNode; +} + +// @public (undocumented) +export class UnaryOpExpContext extends ExpressionContext { + constructor(ctx: ExpressionContext); + // (undocumented) + accept(visitor: ExpressionAntlrParserVisitor): Result; + // (undocumented) + enterRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + exitRule(listener: ExpressionAntlrParserListener): void; + // (undocumented) + expression(): ExpressionContext; + // (undocumented) + NON(): TerminalNode | undefined; + // (undocumented) + PLUS(): TerminalNode | undefined; + // (undocumented) + SUBSTRACT(): TerminalNode | undefined; +} + +// @public +export class Util { + static trim(str: string, char: string): string; +} + +// @public +export type ValidateExpressionDelegate = (expression: Expression) => any; + +// @public +export class ValueExpression extends ExpressionProperty { + constructor(value?: any | string | Expression); + setValue(value: any | string | Expression): void; +} + +// @public +export class ValueExpressionConverter { + convert(value: unknown | ValueExpression): ValueExpression; +} + +// @public +export type ValueWithError = { + value: any; + error: string; +}; + +// @public +export type VerifyExpression = (value: any, expression: Expression, child: number) => string | undefined; + + +// (No @packageDocumentation comment for this package) + +``` diff --git a/libraries/adaptive-expressions/package.json b/libraries/adaptive-expressions/package.json index 9b4db625cf..0e3dcb19a3 100644 --- a/libraries/adaptive-expressions/package.json +++ b/libraries/adaptive-expressions/package.json @@ -55,6 +55,7 @@ "clean": "rimraf lib tsconfig.tsbuildinfo", "build-docs": "typedoc --theme markdown --entryPoint adaptive-expressions --excludePrivate --includeDeclarations --ignoreCompilerErrors --module amd --out ..\\..\\doc\\adaptive-expressions .\\lib\\index.d.ts --hideGenerator --name \"Bot Builder SDK - Expression\" --readme none", "test": "yarn build && mocha tests --timeout 60000", + "test:compat": "api-extractor run --verbose", "lint": "eslint . --ext .js,.ts", "antlr-build-expression": "antlr4ts src/parser/ExpressionAntlrLexer.g4 -o src/parser/generated && antlr4ts src/parser/ExpressionAntlrParser.g4 -visitor -o src/parser/generated", "antlr-build-commonregex": "antlr4ts src/CommonRegex.g4 -o src/generated -visitor" diff --git a/libraries/botbuilder-ai-orchestrator/api-extractor.json b/libraries/botbuilder-ai-orchestrator/api-extractor.json new file mode 100644 index 0000000000..3c6a3b5585 --- /dev/null +++ b/libraries/botbuilder-ai-orchestrator/api-extractor.json @@ -0,0 +1,375 @@ +/** + * Config file for API Extractor. For more info, please visit: https://api-extractor.com + */ + { + "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", + + /** + * Optionally specifies another JSON config file that this file extends from. This provides a way for + * standard settings to be shared across multiple projects. + * + * If the path starts with "./" or "../", the path is resolved relative to the folder of the file that contains + * the "extends" field. Otherwise, the first path segment is interpreted as an NPM package name, and will be + * resolved using NodeJS require(). + * + * SUPPORTED TOKENS: none + * DEFAULT VALUE: "" + */ + // "extends": "./shared/api-extractor-base.json" + // "extends": "my-package/include/api-extractor-base.json" + + /** + * Determines the "" token that can be used with other config file settings. The project folder + * typically contains the tsconfig.json and package.json config files, but the path is user-defined. + * + * The path is resolved relative to the folder of the config file that contains the setting. + * + * The default value for "projectFolder" is the token "", which means the folder is determined by traversing + * parent folders, starting from the folder containing api-extractor.json, and stopping at the first folder + * that contains a tsconfig.json file. If a tsconfig.json file cannot be found in this way, then an error + * will be reported. + * + * SUPPORTED TOKENS: + * DEFAULT VALUE: "" + */ + // "projectFolder": "..", + + /** + * (REQUIRED) Specifies the .d.ts file to be used as the starting point for analysis. API Extractor + * analyzes the symbols exported by this module. + * + * The file extension must be ".d.ts" and not ".ts". + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + */ + "mainEntryPointFilePath": "/lib/index.d.ts", + + /** + * A list of NPM package names whose exports should be treated as part of this package. + * + * For example, suppose that Webpack is used to generate a distributed bundle for the project "library1", + * and another NPM package "library2" is embedded in this bundle. Some types from library2 may become part + * of the exported API for library1, but by default API Extractor would generate a .d.ts rollup that explicitly + * imports library2. To avoid this, we can specify: + * + * "bundledPackages": [ "library2" ], + * + * This would direct API Extractor to embed those types directly in the .d.ts rollup, as if they had been + * local files for library1. + */ + "bundledPackages": [ ], + + /** + * Determines how the TypeScript compiler engine will be invoked by API Extractor. + */ + "compiler": { + /** + * Specifies the path to the tsconfig.json file to be used by API Extractor when analyzing the project. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * Note: This setting will be ignored if "overrideTsconfig" is used. + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/tsconfig.json" + */ + // "tsconfigFilePath": "/tsconfig.json", + + /** + * Provides a compiler configuration that will be used instead of reading the tsconfig.json file from disk. + * The object must conform to the TypeScript tsconfig schema: + * + * http://json.schemastore.org/tsconfig + * + * If omitted, then the tsconfig.json file will be read from the "projectFolder". + * + * DEFAULT VALUE: no overrideTsconfig section + */ + // "overrideTsconfig": { + // . . . + // } + + /** + * This option causes the compiler to be invoked with the --skipLibCheck option. This option is not recommended + * and may cause API Extractor to produce incomplete or incorrect declarations, but it may be required when + * dependencies contain declarations that are incompatible with the TypeScript engine that API Extractor uses + * for its analysis. Where possible, the underlying issue should be fixed rather than relying on skipLibCheck. + * + * DEFAULT VALUE: false + */ + // "skipLibCheck": true, + }, + + /** + * Configures how the API report file (*.api.md) will be generated. + */ + "apiReport": { + /** + * (REQUIRED) Whether to generate an API report. + */ + "enabled": true, + + /** + * The filename for the API report files. It will be combined with "reportFolder" or "reportTempFolder" to produce + * a full file path. + * + * The file extension should be ".api.md", and the string should not contain a path separator such as "\" or "/". + * + * SUPPORTED TOKENS: , + * DEFAULT VALUE: ".api.md" + */ + // "reportFileName": ".api.md", + + /** + * Specifies the folder where the API report file is written. The file name portion is determined by + * the "reportFileName" setting. + * + * The API report file is normally tracked by Git. Changes to it can be used to trigger a branch policy, + * e.g. for an API review. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/etc/" + */ + // "reportFolder": "/etc/", + + /** + * Specifies the folder where the temporary report file is written. The file name portion is determined by + * the "reportFileName" setting. + * + * After the temporary file is written to disk, it is compared with the file in the "reportFolder". + * If they are different, a production build will fail. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/temp/" + */ + // "reportTempFolder": "/temp/" + }, + + /** + * Configures how the doc model file (*.api.json) will be generated. + */ + "docModel": { + /** + * (REQUIRED) Whether to generate a doc model file. + */ + "enabled": true, + + /** + * The output path for the doc model file. The file extension should be ".api.json". + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/temp/.api.json" + */ + // "apiJsonFilePath": "/temp/.api.json" + }, + + /** + * Configures how the .d.ts rollup file will be generated. + */ + "dtsRollup": { + /** + * (REQUIRED) Whether to generate the .d.ts rollup file. + */ + "enabled": true, + + /** + * Specifies the output path for a .d.ts rollup file to be generated without any trimming. + * This file will include all declarations that are exported by the main entry point. + * + * If the path is an empty string, then this file will not be written. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/dist/.d.ts" + */ + // "untrimmedFilePath": "/dist/.d.ts", + + /** + * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "beta" release. + * This file will include only declarations that are marked as "@public" or "@beta". + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "" + */ + // "betaTrimmedFilePath": "/dist/-beta.d.ts", + + + /** + * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "public" release. + * This file will include only declarations that are marked as "@public". + * + * If the path is an empty string, then this file will not be written. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "" + */ + // "publicTrimmedFilePath": "/dist/-public.d.ts", + + /** + * When a declaration is trimmed, by default it will be replaced by a code comment such as + * "Excluded from this release type: exampleMember". Set "omitTrimmingComments" to true to remove the + * declaration completely. + * + * DEFAULT VALUE: false + */ + // "omitTrimmingComments": true + }, + + /** + * Configures how the tsdoc-metadata.json file will be generated. + */ + "tsdocMetadata": { + /** + * Whether to generate the tsdoc-metadata.json file. + * + * DEFAULT VALUE: true + */ + // "enabled": true, + + /** + * Specifies where the TSDoc metadata file should be written. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * The default value is "", which causes the path to be automatically inferred from the "tsdocMetadata", + * "typings" or "main" fields of the project's package.json. If none of these fields are set, the lookup + * falls back to "tsdoc-metadata.json" in the package folder. + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "" + */ + // "tsdocMetadataFilePath": "/dist/tsdoc-metadata.json" + }, + + /** + * Specifies what type of newlines API Extractor should use when writing output files. By default, the output files + * will be written with Windows-style newlines. To use POSIX-style newlines, specify "lf" instead. + * To use the OS's default newline kind, specify "os". + * + * DEFAULT VALUE: "crlf" + */ + // "newlineKind": "crlf", + + /** + * Configures how API Extractor reports error and warning messages produced during analysis. + * + * There are three sources of messages: compiler messages, API Extractor messages, and TSDoc messages. + */ + "messages": { + /** + * Configures handling of diagnostic messages reported by the TypeScript compiler engine while analyzing + * the input .d.ts files. + * + * TypeScript message identifiers start with "TS" followed by an integer. For example: "TS2551" + * + * DEFAULT VALUE: A single "default" entry with logLevel=warning. + */ + "compilerMessageReporting": { + /** + * Configures the default routing for messages that don't match an explicit rule in this table. + */ + "default": { + /** + * Specifies whether the message should be written to the the tool's output log. Note that + * the "addToApiReportFile" property may supersede this option. + * + * Possible values: "error", "warning", "none" + * + * Errors cause the build to fail and return a nonzero exit code. Warnings cause a production build fail + * and return a nonzero exit code. For a non-production build (e.g. when "api-extractor run" includes + * the "--local" option), the warning is displayed but the build will not fail. + * + * DEFAULT VALUE: "warning" + */ + "logLevel": "warning", + + /** + * When addToApiReportFile is true: If API Extractor is configured to write an API report file (.api.md), + * then the message will be written inside that file; otherwise, the message is instead logged according to + * the "logLevel" option. + * + * DEFAULT VALUE: false + */ + // "addToApiReportFile": false + }, + + // "TS2551": { + // "logLevel": "warning", + // "addToApiReportFile": true + // }, + // + // . . . + }, + + /** + * Configures handling of messages reported by API Extractor during its analysis. + * + * API Extractor message identifiers start with "ae-". For example: "ae-extra-release-tag" + * + * DEFAULT VALUE: See api-extractor-defaults.json for the complete table of extractorMessageReporting mappings + */ + "extractorMessageReporting": { + "default": { + "logLevel": "error", + // "addToApiReportFile": false + }, + + "ae-missing-release-tag": { + "logLevel": "none" + }, + + "ae-setter-with-docs": { + "logLevel": "warning", + "addToApiReportFile": true + }, + + "ae-missing-getter": { + "logLevel": "warning", + "addToApiReportFile": true + } + + // "ae-extra-release-tag": { + // "logLevel": "warning", + // "addToApiReportFile": true + // }, + // + // . . . + }, + + /** + * Configures handling of messages reported by the TSDoc parser when analyzing code comments. + * + * TSDoc message identifiers start with "tsdoc-". For example: "tsdoc-link-tag-unescaped-text" + * + * DEFAULT VALUE: A single "default" entry with logLevel=warning. + */ + "tsdocMessageReporting": { + "default": { + "logLevel": "none" + // "addToApiReportFile": false + } + } + } +} diff --git a/libraries/botbuilder-ai-orchestrator/etc/botbuilder-ai-orchestrator.api.md b/libraries/botbuilder-ai-orchestrator/etc/botbuilder-ai-orchestrator.api.md new file mode 100644 index 0000000000..b4bc1e3436 --- /dev/null +++ b/libraries/botbuilder-ai-orchestrator/etc/botbuilder-ai-orchestrator.api.md @@ -0,0 +1,67 @@ +## API Report File for "botbuilder-ai-orchestrator" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +import { Activity } from 'botbuilder-core'; +import { AdaptiveRecognizer } from 'botbuilder-dialogs-adaptive'; +import { BoolExpression } from 'adaptive-expressions'; +import { BotComponent } from 'botbuilder-core'; +import { Configuration } from 'botbuilder-dialogs-adaptive-runtime-core'; +import { Converter } from 'botbuilder-dialogs'; +import { ConverterFactory } from 'botbuilder-dialogs'; +import { DialogContext } from 'botbuilder-dialogs'; +import { Expression } from 'adaptive-expressions'; +import { NumberExpression } from 'adaptive-expressions'; +import { Recognizer } from 'botbuilder-dialogs'; +import { RecognizerConfiguration } from 'botbuilder-dialogs'; +import { RecognizerResult } from 'botbuilder-core'; +import { ServiceCollection } from 'botbuilder-dialogs-adaptive-runtime-core'; +import { StringExpression } from 'adaptive-expressions'; + +// @public (undocumented) +export enum LabelType { + // (undocumented) + Entity = 2, + // (undocumented) + Intent = 1 +} + +// @public (undocumented) +class OrchestratorBotComponent extends BotComponent { + // (undocumented) + configureServices(services: ServiceCollection, _configuration: Configuration): void; +} + +export { OrchestratorBotComponent } + +export default OrchestratorBotComponent; + +// Warning: (ae-forgotten-export) The symbol "OrchestratorRecognizerConfiguration" needs to be exported by the entry point index.d.ts +// +// @public +export class OrchestratorRecognizer extends AdaptiveRecognizer implements OrchestratorRecognizerConfiguration { + // (undocumented) + static $kind: string; + // Warning: (ae-forgotten-export) The symbol "LabelResolver" needs to be exported by the entry point index.d.ts + constructor(modelFolder?: string, snapshotFile?: string, resolver?: LabelResolver); + readonly chooseIntent = "ChooseIntent"; + detectAmbiguousIntents: BoolExpression; + disambiguationScoreThreshold: NumberExpression; + readonly entityProperty = "entityResult"; + externalEntityRecognizer: Recognizer; + protected fillRecognizerResultTelemetryProperties(recognizerResult: RecognizerResult, telemetryProperties: Record, dialogContext?: DialogContext): Record; + // (undocumented) + getConverter(property: keyof OrchestratorRecognizerConfiguration): Converter | ConverterFactory; + modelFolder: StringExpression; + recognize(dc: DialogContext, activity: Partial, telemetryProperties?: Record, telemetryMetrics?: Record): Promise; + readonly resultProperty = "result"; + scoreEntities: boolean; + snapshotFile: StringExpression; + } + + +// (No @packageDocumentation comment for this package) + +``` diff --git a/libraries/botbuilder-ai-orchestrator/package.json b/libraries/botbuilder-ai-orchestrator/package.json index 04f5eb5836..2b9cd036ba 100644 --- a/libraries/botbuilder-ai-orchestrator/package.json +++ b/libraries/botbuilder-ai-orchestrator/package.json @@ -44,7 +44,8 @@ "clean": "rimraf _ts3.4 lib tsconfig.tsbuildinfo", "lint": "eslint . --ext .js,.ts", "postbuild": "downlevel-dts lib _ts3.4/lib --checksum", - "test": "yarn build && nyc mocha tests/" + "test": "yarn build && nyc mocha tests/", + "test:compat": "api-extractor run --verbose" }, "files": [ "_ts3.4", diff --git a/libraries/botbuilder-azure-blobs/api-extractor.json b/libraries/botbuilder-azure-blobs/api-extractor.json new file mode 100644 index 0000000000..3c6a3b5585 --- /dev/null +++ b/libraries/botbuilder-azure-blobs/api-extractor.json @@ -0,0 +1,375 @@ +/** + * Config file for API Extractor. For more info, please visit: https://api-extractor.com + */ + { + "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", + + /** + * Optionally specifies another JSON config file that this file extends from. This provides a way for + * standard settings to be shared across multiple projects. + * + * If the path starts with "./" or "../", the path is resolved relative to the folder of the file that contains + * the "extends" field. Otherwise, the first path segment is interpreted as an NPM package name, and will be + * resolved using NodeJS require(). + * + * SUPPORTED TOKENS: none + * DEFAULT VALUE: "" + */ + // "extends": "./shared/api-extractor-base.json" + // "extends": "my-package/include/api-extractor-base.json" + + /** + * Determines the "" token that can be used with other config file settings. The project folder + * typically contains the tsconfig.json and package.json config files, but the path is user-defined. + * + * The path is resolved relative to the folder of the config file that contains the setting. + * + * The default value for "projectFolder" is the token "", which means the folder is determined by traversing + * parent folders, starting from the folder containing api-extractor.json, and stopping at the first folder + * that contains a tsconfig.json file. If a tsconfig.json file cannot be found in this way, then an error + * will be reported. + * + * SUPPORTED TOKENS: + * DEFAULT VALUE: "" + */ + // "projectFolder": "..", + + /** + * (REQUIRED) Specifies the .d.ts file to be used as the starting point for analysis. API Extractor + * analyzes the symbols exported by this module. + * + * The file extension must be ".d.ts" and not ".ts". + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + */ + "mainEntryPointFilePath": "/lib/index.d.ts", + + /** + * A list of NPM package names whose exports should be treated as part of this package. + * + * For example, suppose that Webpack is used to generate a distributed bundle for the project "library1", + * and another NPM package "library2" is embedded in this bundle. Some types from library2 may become part + * of the exported API for library1, but by default API Extractor would generate a .d.ts rollup that explicitly + * imports library2. To avoid this, we can specify: + * + * "bundledPackages": [ "library2" ], + * + * This would direct API Extractor to embed those types directly in the .d.ts rollup, as if they had been + * local files for library1. + */ + "bundledPackages": [ ], + + /** + * Determines how the TypeScript compiler engine will be invoked by API Extractor. + */ + "compiler": { + /** + * Specifies the path to the tsconfig.json file to be used by API Extractor when analyzing the project. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * Note: This setting will be ignored if "overrideTsconfig" is used. + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/tsconfig.json" + */ + // "tsconfigFilePath": "/tsconfig.json", + + /** + * Provides a compiler configuration that will be used instead of reading the tsconfig.json file from disk. + * The object must conform to the TypeScript tsconfig schema: + * + * http://json.schemastore.org/tsconfig + * + * If omitted, then the tsconfig.json file will be read from the "projectFolder". + * + * DEFAULT VALUE: no overrideTsconfig section + */ + // "overrideTsconfig": { + // . . . + // } + + /** + * This option causes the compiler to be invoked with the --skipLibCheck option. This option is not recommended + * and may cause API Extractor to produce incomplete or incorrect declarations, but it may be required when + * dependencies contain declarations that are incompatible with the TypeScript engine that API Extractor uses + * for its analysis. Where possible, the underlying issue should be fixed rather than relying on skipLibCheck. + * + * DEFAULT VALUE: false + */ + // "skipLibCheck": true, + }, + + /** + * Configures how the API report file (*.api.md) will be generated. + */ + "apiReport": { + /** + * (REQUIRED) Whether to generate an API report. + */ + "enabled": true, + + /** + * The filename for the API report files. It will be combined with "reportFolder" or "reportTempFolder" to produce + * a full file path. + * + * The file extension should be ".api.md", and the string should not contain a path separator such as "\" or "/". + * + * SUPPORTED TOKENS: , + * DEFAULT VALUE: ".api.md" + */ + // "reportFileName": ".api.md", + + /** + * Specifies the folder where the API report file is written. The file name portion is determined by + * the "reportFileName" setting. + * + * The API report file is normally tracked by Git. Changes to it can be used to trigger a branch policy, + * e.g. for an API review. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/etc/" + */ + // "reportFolder": "/etc/", + + /** + * Specifies the folder where the temporary report file is written. The file name portion is determined by + * the "reportFileName" setting. + * + * After the temporary file is written to disk, it is compared with the file in the "reportFolder". + * If they are different, a production build will fail. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/temp/" + */ + // "reportTempFolder": "/temp/" + }, + + /** + * Configures how the doc model file (*.api.json) will be generated. + */ + "docModel": { + /** + * (REQUIRED) Whether to generate a doc model file. + */ + "enabled": true, + + /** + * The output path for the doc model file. The file extension should be ".api.json". + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/temp/.api.json" + */ + // "apiJsonFilePath": "/temp/.api.json" + }, + + /** + * Configures how the .d.ts rollup file will be generated. + */ + "dtsRollup": { + /** + * (REQUIRED) Whether to generate the .d.ts rollup file. + */ + "enabled": true, + + /** + * Specifies the output path for a .d.ts rollup file to be generated without any trimming. + * This file will include all declarations that are exported by the main entry point. + * + * If the path is an empty string, then this file will not be written. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/dist/.d.ts" + */ + // "untrimmedFilePath": "/dist/.d.ts", + + /** + * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "beta" release. + * This file will include only declarations that are marked as "@public" or "@beta". + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "" + */ + // "betaTrimmedFilePath": "/dist/-beta.d.ts", + + + /** + * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "public" release. + * This file will include only declarations that are marked as "@public". + * + * If the path is an empty string, then this file will not be written. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "" + */ + // "publicTrimmedFilePath": "/dist/-public.d.ts", + + /** + * When a declaration is trimmed, by default it will be replaced by a code comment such as + * "Excluded from this release type: exampleMember". Set "omitTrimmingComments" to true to remove the + * declaration completely. + * + * DEFAULT VALUE: false + */ + // "omitTrimmingComments": true + }, + + /** + * Configures how the tsdoc-metadata.json file will be generated. + */ + "tsdocMetadata": { + /** + * Whether to generate the tsdoc-metadata.json file. + * + * DEFAULT VALUE: true + */ + // "enabled": true, + + /** + * Specifies where the TSDoc metadata file should be written. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * The default value is "", which causes the path to be automatically inferred from the "tsdocMetadata", + * "typings" or "main" fields of the project's package.json. If none of these fields are set, the lookup + * falls back to "tsdoc-metadata.json" in the package folder. + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "" + */ + // "tsdocMetadataFilePath": "/dist/tsdoc-metadata.json" + }, + + /** + * Specifies what type of newlines API Extractor should use when writing output files. By default, the output files + * will be written with Windows-style newlines. To use POSIX-style newlines, specify "lf" instead. + * To use the OS's default newline kind, specify "os". + * + * DEFAULT VALUE: "crlf" + */ + // "newlineKind": "crlf", + + /** + * Configures how API Extractor reports error and warning messages produced during analysis. + * + * There are three sources of messages: compiler messages, API Extractor messages, and TSDoc messages. + */ + "messages": { + /** + * Configures handling of diagnostic messages reported by the TypeScript compiler engine while analyzing + * the input .d.ts files. + * + * TypeScript message identifiers start with "TS" followed by an integer. For example: "TS2551" + * + * DEFAULT VALUE: A single "default" entry with logLevel=warning. + */ + "compilerMessageReporting": { + /** + * Configures the default routing for messages that don't match an explicit rule in this table. + */ + "default": { + /** + * Specifies whether the message should be written to the the tool's output log. Note that + * the "addToApiReportFile" property may supersede this option. + * + * Possible values: "error", "warning", "none" + * + * Errors cause the build to fail and return a nonzero exit code. Warnings cause a production build fail + * and return a nonzero exit code. For a non-production build (e.g. when "api-extractor run" includes + * the "--local" option), the warning is displayed but the build will not fail. + * + * DEFAULT VALUE: "warning" + */ + "logLevel": "warning", + + /** + * When addToApiReportFile is true: If API Extractor is configured to write an API report file (.api.md), + * then the message will be written inside that file; otherwise, the message is instead logged according to + * the "logLevel" option. + * + * DEFAULT VALUE: false + */ + // "addToApiReportFile": false + }, + + // "TS2551": { + // "logLevel": "warning", + // "addToApiReportFile": true + // }, + // + // . . . + }, + + /** + * Configures handling of messages reported by API Extractor during its analysis. + * + * API Extractor message identifiers start with "ae-". For example: "ae-extra-release-tag" + * + * DEFAULT VALUE: See api-extractor-defaults.json for the complete table of extractorMessageReporting mappings + */ + "extractorMessageReporting": { + "default": { + "logLevel": "error", + // "addToApiReportFile": false + }, + + "ae-missing-release-tag": { + "logLevel": "none" + }, + + "ae-setter-with-docs": { + "logLevel": "warning", + "addToApiReportFile": true + }, + + "ae-missing-getter": { + "logLevel": "warning", + "addToApiReportFile": true + } + + // "ae-extra-release-tag": { + // "logLevel": "warning", + // "addToApiReportFile": true + // }, + // + // . . . + }, + + /** + * Configures handling of messages reported by the TSDoc parser when analyzing code comments. + * + * TSDoc message identifiers start with "tsdoc-". For example: "tsdoc-link-tag-unescaped-text" + * + * DEFAULT VALUE: A single "default" entry with logLevel=warning. + */ + "tsdocMessageReporting": { + "default": { + "logLevel": "none" + // "addToApiReportFile": false + } + } + } +} diff --git a/libraries/botbuilder-azure-blobs/etc/botbuilder-azure-blobs.api.md b/libraries/botbuilder-azure-blobs/etc/botbuilder-azure-blobs.api.md new file mode 100644 index 0000000000..2495331738 --- /dev/null +++ b/libraries/botbuilder-azure-blobs/etc/botbuilder-azure-blobs.api.md @@ -0,0 +1,45 @@ +## API Report File for "botbuilder-azure-blobs" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +import { Activity } from 'botbuilder-core'; +import { PagedResult } from 'botbuilder-core'; +import { Storage as Storage_2 } from 'botbuilder-core'; +import { StoragePipelineOptions } from '@azure/storage-blob'; +import { StoreItems } from 'botbuilder-core'; +import { TranscriptInfo } from 'botbuilder-core'; +import { TranscriptStore } from 'botbuilder-core'; + +// @public +export class BlobsStorage implements Storage_2 { + constructor(connectionString: string, containerName: string, options?: BlobsStorageOptions); + delete(keys: string[]): Promise; + read(keys: string[]): Promise; + write(changes: StoreItems): Promise; +} + +// @public +export interface BlobsStorageOptions { + storagePipelineOptions?: StoragePipelineOptions; +} + +// @public +export class BlobsTranscriptStore implements TranscriptStore { + constructor(connectionString: string, containerName: string, options?: BlobsTranscriptStoreOptions); + deleteTranscript(channelId: string, conversationId: string): Promise; + getTranscriptActivities(channelId: string, conversationId: string, continuationToken?: string, startDate?: Date): Promise>; + listTranscripts(channelId: string, continuationToken?: string): Promise>; + logActivity(activity: Activity): Promise; + } + +// @public +export interface BlobsTranscriptStoreOptions { + storagePipelineOptions?: StoragePipelineOptions; +} + + +// (No @packageDocumentation comment for this package) + +``` diff --git a/libraries/botbuilder-azure-blobs/package.json b/libraries/botbuilder-azure-blobs/package.json index 25b953a323..b42724ffe2 100644 --- a/libraries/botbuilder-azure-blobs/package.json +++ b/libraries/botbuilder-azure-blobs/package.json @@ -41,7 +41,8 @@ "clean": "rimraf _ts3.4 lib tsconfig.tsbuildinfo", "lint": "eslint . --ext .js,.ts", "postbuild": "downlevel-dts lib _ts3.4/lib --checksum", - "test": "yarn build && nyc mocha --check-leaks tests" + "test": "yarn build && nyc mocha --check-leaks tests", + "test:compat": "api-extractor run --verbose" }, "files": [ "_ts3.4", diff --git a/libraries/botbuilder-azure-queues/api-extractor.json b/libraries/botbuilder-azure-queues/api-extractor.json new file mode 100644 index 0000000000..3c6a3b5585 --- /dev/null +++ b/libraries/botbuilder-azure-queues/api-extractor.json @@ -0,0 +1,375 @@ +/** + * Config file for API Extractor. For more info, please visit: https://api-extractor.com + */ + { + "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", + + /** + * Optionally specifies another JSON config file that this file extends from. This provides a way for + * standard settings to be shared across multiple projects. + * + * If the path starts with "./" or "../", the path is resolved relative to the folder of the file that contains + * the "extends" field. Otherwise, the first path segment is interpreted as an NPM package name, and will be + * resolved using NodeJS require(). + * + * SUPPORTED TOKENS: none + * DEFAULT VALUE: "" + */ + // "extends": "./shared/api-extractor-base.json" + // "extends": "my-package/include/api-extractor-base.json" + + /** + * Determines the "" token that can be used with other config file settings. The project folder + * typically contains the tsconfig.json and package.json config files, but the path is user-defined. + * + * The path is resolved relative to the folder of the config file that contains the setting. + * + * The default value for "projectFolder" is the token "", which means the folder is determined by traversing + * parent folders, starting from the folder containing api-extractor.json, and stopping at the first folder + * that contains a tsconfig.json file. If a tsconfig.json file cannot be found in this way, then an error + * will be reported. + * + * SUPPORTED TOKENS: + * DEFAULT VALUE: "" + */ + // "projectFolder": "..", + + /** + * (REQUIRED) Specifies the .d.ts file to be used as the starting point for analysis. API Extractor + * analyzes the symbols exported by this module. + * + * The file extension must be ".d.ts" and not ".ts". + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + */ + "mainEntryPointFilePath": "/lib/index.d.ts", + + /** + * A list of NPM package names whose exports should be treated as part of this package. + * + * For example, suppose that Webpack is used to generate a distributed bundle for the project "library1", + * and another NPM package "library2" is embedded in this bundle. Some types from library2 may become part + * of the exported API for library1, but by default API Extractor would generate a .d.ts rollup that explicitly + * imports library2. To avoid this, we can specify: + * + * "bundledPackages": [ "library2" ], + * + * This would direct API Extractor to embed those types directly in the .d.ts rollup, as if they had been + * local files for library1. + */ + "bundledPackages": [ ], + + /** + * Determines how the TypeScript compiler engine will be invoked by API Extractor. + */ + "compiler": { + /** + * Specifies the path to the tsconfig.json file to be used by API Extractor when analyzing the project. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * Note: This setting will be ignored if "overrideTsconfig" is used. + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/tsconfig.json" + */ + // "tsconfigFilePath": "/tsconfig.json", + + /** + * Provides a compiler configuration that will be used instead of reading the tsconfig.json file from disk. + * The object must conform to the TypeScript tsconfig schema: + * + * http://json.schemastore.org/tsconfig + * + * If omitted, then the tsconfig.json file will be read from the "projectFolder". + * + * DEFAULT VALUE: no overrideTsconfig section + */ + // "overrideTsconfig": { + // . . . + // } + + /** + * This option causes the compiler to be invoked with the --skipLibCheck option. This option is not recommended + * and may cause API Extractor to produce incomplete or incorrect declarations, but it may be required when + * dependencies contain declarations that are incompatible with the TypeScript engine that API Extractor uses + * for its analysis. Where possible, the underlying issue should be fixed rather than relying on skipLibCheck. + * + * DEFAULT VALUE: false + */ + // "skipLibCheck": true, + }, + + /** + * Configures how the API report file (*.api.md) will be generated. + */ + "apiReport": { + /** + * (REQUIRED) Whether to generate an API report. + */ + "enabled": true, + + /** + * The filename for the API report files. It will be combined with "reportFolder" or "reportTempFolder" to produce + * a full file path. + * + * The file extension should be ".api.md", and the string should not contain a path separator such as "\" or "/". + * + * SUPPORTED TOKENS: , + * DEFAULT VALUE: ".api.md" + */ + // "reportFileName": ".api.md", + + /** + * Specifies the folder where the API report file is written. The file name portion is determined by + * the "reportFileName" setting. + * + * The API report file is normally tracked by Git. Changes to it can be used to trigger a branch policy, + * e.g. for an API review. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/etc/" + */ + // "reportFolder": "/etc/", + + /** + * Specifies the folder where the temporary report file is written. The file name portion is determined by + * the "reportFileName" setting. + * + * After the temporary file is written to disk, it is compared with the file in the "reportFolder". + * If they are different, a production build will fail. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/temp/" + */ + // "reportTempFolder": "/temp/" + }, + + /** + * Configures how the doc model file (*.api.json) will be generated. + */ + "docModel": { + /** + * (REQUIRED) Whether to generate a doc model file. + */ + "enabled": true, + + /** + * The output path for the doc model file. The file extension should be ".api.json". + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/temp/.api.json" + */ + // "apiJsonFilePath": "/temp/.api.json" + }, + + /** + * Configures how the .d.ts rollup file will be generated. + */ + "dtsRollup": { + /** + * (REQUIRED) Whether to generate the .d.ts rollup file. + */ + "enabled": true, + + /** + * Specifies the output path for a .d.ts rollup file to be generated without any trimming. + * This file will include all declarations that are exported by the main entry point. + * + * If the path is an empty string, then this file will not be written. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/dist/.d.ts" + */ + // "untrimmedFilePath": "/dist/.d.ts", + + /** + * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "beta" release. + * This file will include only declarations that are marked as "@public" or "@beta". + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "" + */ + // "betaTrimmedFilePath": "/dist/-beta.d.ts", + + + /** + * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "public" release. + * This file will include only declarations that are marked as "@public". + * + * If the path is an empty string, then this file will not be written. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "" + */ + // "publicTrimmedFilePath": "/dist/-public.d.ts", + + /** + * When a declaration is trimmed, by default it will be replaced by a code comment such as + * "Excluded from this release type: exampleMember". Set "omitTrimmingComments" to true to remove the + * declaration completely. + * + * DEFAULT VALUE: false + */ + // "omitTrimmingComments": true + }, + + /** + * Configures how the tsdoc-metadata.json file will be generated. + */ + "tsdocMetadata": { + /** + * Whether to generate the tsdoc-metadata.json file. + * + * DEFAULT VALUE: true + */ + // "enabled": true, + + /** + * Specifies where the TSDoc metadata file should be written. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * The default value is "", which causes the path to be automatically inferred from the "tsdocMetadata", + * "typings" or "main" fields of the project's package.json. If none of these fields are set, the lookup + * falls back to "tsdoc-metadata.json" in the package folder. + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "" + */ + // "tsdocMetadataFilePath": "/dist/tsdoc-metadata.json" + }, + + /** + * Specifies what type of newlines API Extractor should use when writing output files. By default, the output files + * will be written with Windows-style newlines. To use POSIX-style newlines, specify "lf" instead. + * To use the OS's default newline kind, specify "os". + * + * DEFAULT VALUE: "crlf" + */ + // "newlineKind": "crlf", + + /** + * Configures how API Extractor reports error and warning messages produced during analysis. + * + * There are three sources of messages: compiler messages, API Extractor messages, and TSDoc messages. + */ + "messages": { + /** + * Configures handling of diagnostic messages reported by the TypeScript compiler engine while analyzing + * the input .d.ts files. + * + * TypeScript message identifiers start with "TS" followed by an integer. For example: "TS2551" + * + * DEFAULT VALUE: A single "default" entry with logLevel=warning. + */ + "compilerMessageReporting": { + /** + * Configures the default routing for messages that don't match an explicit rule in this table. + */ + "default": { + /** + * Specifies whether the message should be written to the the tool's output log. Note that + * the "addToApiReportFile" property may supersede this option. + * + * Possible values: "error", "warning", "none" + * + * Errors cause the build to fail and return a nonzero exit code. Warnings cause a production build fail + * and return a nonzero exit code. For a non-production build (e.g. when "api-extractor run" includes + * the "--local" option), the warning is displayed but the build will not fail. + * + * DEFAULT VALUE: "warning" + */ + "logLevel": "warning", + + /** + * When addToApiReportFile is true: If API Extractor is configured to write an API report file (.api.md), + * then the message will be written inside that file; otherwise, the message is instead logged according to + * the "logLevel" option. + * + * DEFAULT VALUE: false + */ + // "addToApiReportFile": false + }, + + // "TS2551": { + // "logLevel": "warning", + // "addToApiReportFile": true + // }, + // + // . . . + }, + + /** + * Configures handling of messages reported by API Extractor during its analysis. + * + * API Extractor message identifiers start with "ae-". For example: "ae-extra-release-tag" + * + * DEFAULT VALUE: See api-extractor-defaults.json for the complete table of extractorMessageReporting mappings + */ + "extractorMessageReporting": { + "default": { + "logLevel": "error", + // "addToApiReportFile": false + }, + + "ae-missing-release-tag": { + "logLevel": "none" + }, + + "ae-setter-with-docs": { + "logLevel": "warning", + "addToApiReportFile": true + }, + + "ae-missing-getter": { + "logLevel": "warning", + "addToApiReportFile": true + } + + // "ae-extra-release-tag": { + // "logLevel": "warning", + // "addToApiReportFile": true + // }, + // + // . . . + }, + + /** + * Configures handling of messages reported by the TSDoc parser when analyzing code comments. + * + * TSDoc message identifiers start with "tsdoc-". For example: "tsdoc-link-tag-unescaped-text" + * + * DEFAULT VALUE: A single "default" entry with logLevel=warning. + */ + "tsdocMessageReporting": { + "default": { + "logLevel": "none" + // "addToApiReportFile": false + } + } + } +} diff --git a/libraries/botbuilder-azure-queues/etc/botbuilder-azure-queues.api.md b/libraries/botbuilder-azure-queues/etc/botbuilder-azure-queues.api.md new file mode 100644 index 0000000000..ebb9ee0ded --- /dev/null +++ b/libraries/botbuilder-azure-queues/etc/botbuilder-azure-queues.api.md @@ -0,0 +1,19 @@ +## API Report File for "botbuilder-azure-queues" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +import { Activity } from 'botbuilder-core'; +import { QueueStorage } from 'botbuilder-core'; + +// @public +export class AzureQueueStorage extends QueueStorage { + constructor(queuesStorageConnectionString: string, queueName: string); + queueActivity(activity: Partial, visibilityTimeout?: number, messageTimeToLive?: number): Promise; + } + + +// (No @packageDocumentation comment for this package) + +``` diff --git a/libraries/botbuilder-azure-queues/package.json b/libraries/botbuilder-azure-queues/package.json index 6e5506d1b2..ad6fc200f2 100644 --- a/libraries/botbuilder-azure-queues/package.json +++ b/libraries/botbuilder-azure-queues/package.json @@ -40,7 +40,8 @@ "clean": "rimraf _ts3.4 lib tsconfig.tsbuildinfo", "lint": "eslint . --ext .js,.ts", "postbuild": "downlevel-dts lib _ts3.4/lib", - "test": "yarn build && nyc mocha --check-leaks tests" + "test": "yarn build && nyc mocha --check-leaks tests", + "test:compat": "api-extractor run --verbose" }, "files": [ "_ts3.4", diff --git a/libraries/botbuilder-dialogs-adaptive-testing/etc/botbuilder-dialogs-adaptive-testing.api.md b/libraries/botbuilder-dialogs-adaptive-testing/etc/botbuilder-dialogs-adaptive-testing.api.md index c30f627067..2c7c6564f5 100644 --- a/libraries/botbuilder-dialogs-adaptive-testing/etc/botbuilder-dialogs-adaptive-testing.api.md +++ b/libraries/botbuilder-dialogs-adaptive-testing/etc/botbuilder-dialogs-adaptive-testing.api.md @@ -5,90 +5,298 @@ ```ts import { Activity } from 'botbuilder-core'; +import { BotComponent } from 'botbuilder-core'; +import { ClientRequest } from 'http'; +import { Configurable } from 'botbuilder-dialogs'; +import { Configuration } from 'botbuilder-dialogs-adaptive-runtime-core'; +import { Converter } from 'botbuilder-dialogs'; +import { ConverterFactory } from 'botbuilder-dialogs'; +import { CustomDeserializer } from 'botbuilder-dialogs-declarative'; import { Dialog } from 'botbuilder-dialogs'; +import { DialogConfiguration } from 'botbuilder-dialogs'; import { DialogContext } from 'botbuilder-dialogs'; -import { DialogExpression } from 'botbuilder-dialogs-adaptive'; import { DialogTurnResult } from 'botbuilder-dialogs'; import { Expression } from 'adaptive-expressions'; +import { LanguagePolicy } from 'botbuilder-dialogs-adaptive'; +import { LuisAdaptiveRecognizer } from 'botbuilder-ai'; +import { LuisAdaptiveRecognizerConfiguration } from 'botbuilder-ai'; +import { Middleware } from 'botbuilder-core'; +import { Newable } from 'botbuilder-stdlib'; +import { PropertyAssignment } from 'botbuilder-dialogs-adaptive'; +import { Recognizer } from 'botbuilder-dialogs'; +import { RecognizerResult } from 'botbuilder-core'; import { ResourceExplorer } from 'botbuilder-dialogs-declarative'; +import { ServiceCollection } from 'botbuilder-dialogs-adaptive-runtime-core'; import { StringExpression } from 'adaptive-expressions'; import { TestAdapter } from 'botbuilder-core'; import { TurnContext } from 'botbuilder-core'; // @public (undocumented) -export class AssertCondition extends Dialog { +export class AdaptiveTestBotComponent extends BotComponent { // (undocumented) + configureServices(services: ServiceCollection, _configuration: Configuration): void; +} + +// @public +export class AssertCondition extends Dialog implements AssertConditionConfiguration { + // (undocumented) + static $kind: string; beginDialog(dc: DialogContext, options?: O): Promise; condition: Expression; description: StringExpression; // (undocumented) + getConverter(property: keyof AssertConditionConfiguration): Converter | ConverterFactory; + // (undocumented) protected onComputeId(): string; } // @public (undocumented) -export class AssertReply extends AssertReplyActivity { - exact: boolean; +export interface AssertConditionConfiguration extends DialogConfiguration { + // (undocumented) + condition?: string | Expression; + // (undocumented) + description?: string | Expression | StringExpression; +} + +// @public +export class AssertNoActivity extends TestAction implements AssertNoActivityConfiguration { // (undocumented) + static $kind: string; + description: string; + execute(adapter: TestAdapter, callback: (context: TurnContext) => Promise, inspector?: Inspector): Promise; getConditionDescription(): string; - text: string; +} + +// @public (undocumented) +export interface AssertNoActivityConfiguration { + // (undocumented) + description?: string; +} + +// @public +export class AssertReply extends AssertReplyActivity implements AssertReplyConfiguration { // (undocumented) + static $kind: string; + exact: boolean; + getConditionDescription(): string; + text: string; validateReply(activity: Activity): void; } -// @public (undocumented) -export class AssertReplyActivity implements TestAction { +// @public +export class AssertReplyActivity extends TestAction implements AssertReplyActivityConfiguration { + // (undocumented) + static $kind: string; assertions: string[]; description: string; - // (undocumented) - execute(testAdapter: TestAdapter, callback: (context: TurnContext) => Promise): Promise; - // (undocumented) + execute(testAdapter: TestAdapter, callback: (context: TurnContext) => Promise, inspector?: Inspector): Promise; getConditionDescription(): string; timeout: number; - // (undocumented) validateReply(activity: Activity): void; } // @public (undocumented) -export class AssertReplyOneOf extends AssertReplyActivity { - exact: boolean; +export interface AssertReplyActivityConfiguration { + // (undocumented) + assertions?: string[]; + // (undocumented) + description?: string; + // (undocumented) + timeout?: number; +} + +// @public (undocumented) +export interface AssertReplyConfiguration extends AssertReplyActivityConfiguration { + // (undocumented) + exact?: boolean; // (undocumented) + text?: string; +} + +// @public +export class AssertReplyOneOf extends AssertReplyActivity implements AssertReplyOneOfConfiguration { + // (undocumented) + static $kind: string; + exact: boolean; getConditionDescription(): string; text: string[]; - // (undocumented) validateReply(activity: Activity): void; } // @public (undocumented) -export interface TestAction { +export interface AssertReplyOneOfConfiguration extends AssertReplyActivityConfiguration { // (undocumented) - execute(adapter: TestAdapter, callback: (context: TurnContext) => Promise): any; + exact?: boolean; + // (undocumented) + text?: string[]; } // @public (undocumented) -export class TestRunner { - constructor(resourcePath: string); +class CustomEvent_2 extends TestAction implements CustomEventConfiguration { + // (undocumented) + static $kind: string; + execute(testAdapter: TestAdapter, callback: (context: TurnContext) => Promise, inspector?: Inspector): Promise; + name: string; + value?: T; +} + +export { CustomEvent_2 as CustomEvent } + +// @public (undocumented) +export interface CustomEventConfiguration { + // (undocumented) + name: string; + // (undocumented) + value?: unknown; +} + +// Warning: (ae-forgotten-export) The symbol "HttpResponseMessage" needs to be exported by the entry point index.d.ts +// +// @public +export type FallbackFunc = (request: HttpRequestMessage) => HttpResponseMessage | Promise; + +// @public +export type HttpRequestMessage = ClientRequest & { + headers: Record; +}; + +// Warning: (ae-forgotten-export) The symbol "DialogContextInspector" needs to be exported by the entry point index.d.ts +// +// @public +export type Inspector = (inspector: DialogContextInspector) => Promise; + +// @public +export class MemoryAssertions extends TestAction implements MemoryAssertionsConfiguration { + // (undocumented) + static $kind: string; + assertions: string[]; + description: string; + execute(adapter: TestAdapter, callback: (context: TurnContext) => Promise, inspector?: Inspector): Promise; +} + +// @public (undocumented) +export interface MemoryAssertionsConfiguration { + // (undocumented) + assertions?: string[]; + // (undocumented) + description?: string; +} + +// @public +export class MockHttpRequestMiddleware implements Middleware { + // Warning: (ae-forgotten-export) The symbol "HttpRequestMock" needs to be exported by the entry point index.d.ts + constructor(httpRequestMocks?: HttpRequestMock[]); + // (undocumented) + onTurn(context: TurnContext, next: () => Promise): Promise; + setFallback(fallback?: FallbackFunc): void; +} + +// @public +export const MockHttpRequestMiddlewareKey: unique symbol; + +// @public +export class MockLuisLoader implements CustomDeserializer { + constructor(_resourceExplorer: ResourceExplorer, _configuration?: Record); // (undocumented) - runTestScript(testName: string): Promise; + load(config: LuisAdaptiveRecognizerConfiguration, type: Newable): MockLuisRecognizer; } +// @public +export class MockLuisRecognizer extends Recognizer { + constructor(recognizer: LuisAdaptiveRecognizer, resourceDir: string, name: string); + // (undocumented) + recognize(dialogContext: DialogContext, activity: Activity, telemetryProperties?: Record, telemetryMetrics?: Record): Promise; + } + +// @public +export class MockSettingsMiddleware implements Middleware { + // Warning: (ae-forgotten-export) The symbol "SettingMock" needs to be exported by the entry point index.d.ts + constructor(settingMocks: SettingMock[]); + // (undocumented) + onTurn(context: TurnContext, next: () => Promise): Promise; +} + +// @public +export class SetProperties extends TestAction { + // (undocumented) + static $kind: string; + assignments: PropertyAssignment[]; + execute(adapter: TestAdapter, callback: (context: TurnContext) => Promise, inspector?: Inspector): Promise; + // (undocumented) + getConverter(property: keyof SetPropertiesConfiguration): Converter | ConverterFactory; +} + // @public (undocumented) -export class TestScript { +export interface SetPropertiesConfiguration { + // Warning: (ae-forgotten-export) The symbol "AssignmentInput" needs to be exported by the entry point index.d.ts + // + // (undocumented) + assignments?: AssignmentInput[] | PropertyAssignment[]; +} + +// @public +export abstract class TestAction extends Configurable { + // (undocumented) + abstract execute(adapter: TestAdapter, callback: (context: TurnContext) => Promise, inspector?: Inspector): void; +} + +// @public +export class TestScript extends Configurable implements TestScriptConfiguration { + // (undocumented) + static $kind: string; + configuration: Record; + defaultTestAdapter(testName?: string, ...middlewares: Middleware[]): TestAdapter; description: string; - dialog: DialogExpression; - languagePolicy: LanguagePolicy; + dialog: Dialog; enableTrace: boolean; - execute(resourceExplorer: ResourceExplorer, testName?: string, testAdapter?: TestAdapter): Promise; + execute(resourceExplorer: ResourceExplorer, testName?: string, callback?: (context: TurnContext) => Promise, adapter?: TestAdapter, ...middlewares: Middleware[]): Promise; + // (undocumented) + getConverter(property: keyof TestScriptConfiguration): Converter | ConverterFactory; + httpRequestMocks: HttpRequestMock[]; + languagePolicy: LanguagePolicy; locale: string; script: TestAction[]; + settingMocks: SettingMock[]; // Warning: (ae-forgotten-export) The symbol "UserTokenMock" needs to be exported by the entry point index.d.ts userTokenMocks: UserTokenMock[]; } // @public (undocumented) -export class UserActivity implements TestAction { - activity: Activity; +export interface TestScriptConfiguration { + // (undocumented) + description?: string; + // (undocumented) + dialog?: string | Dialog; + // (undocumented) + enableTrace?: boolean; + // (undocumented) + httpRequestMocks?: string[] | HttpRequestMock[]; + // (undocumented) + languagePolicy?: Record | LanguagePolicy; + // (undocumented) + locale?: string; + // (undocumented) + script?: TestAction[]; + // (undocumented) + settingMocks?: string[] | SettingMock[]; + // (undocumented) + userTokenMocks?: string[] | UserTokenMock[]; +} + +// @public +export class TestUtils { + static runTestScript(resourceExplorer: ResourceExplorer, testName?: string, adapter?: TestAdapter, configuration?: Record, ...middlewares: Middleware[]): Promise; +} + +// @public +export function useMockLuisSettings(directory: string, endpoint?: string): Record; + +// @public +export class UserActivity extends TestAction implements UserActivityConfiguration { // (undocumented) - execute(testAdapter: TestAdapter, callback: (context: TurnContext) => Promise): Promise; + static $kind: string; + activity: Activity; + execute(testAdapter: TestAdapter, callback: (context: TurnContext) => Promise, inspector?: Inspector): Promise; user: string; } @@ -100,34 +308,28 @@ export interface UserActivityConfiguration { user?: string; } -// @public (undocumented) -export class CustomEvent implements TestAction { - name: string; +// @public +export class UserConversationUpdate extends TestAction implements UserConversationUpdateConfiguration { // (undocumented) - execute(testAdapter: TestAdapter, callback: (context: TurnContext) => Promise): Promise; - value?: unknown; + static $kind: string; + execute(testAdapter: TestAdapter, callback: (context: TurnContext) => Promise, inspector?: Inspector): Promise; + membersAdded: string[]; + membersRemoved: string[]; } // @public (undocumented) -export interface CustomEventConfiguration { +export interface UserConversationUpdateConfiguration { // (undocumented) - name: string; + membersAdded?: string[]; // (undocumented) - value?: unknown; + membersRemoved?: string[]; } -// @public (undocumented) -export class UserConversationUpdate implements TestAction { +// @public +export class UserDelay extends TestAction implements UserDelayConfiguration { // (undocumented) - execute(testAdapter: TestAdapter, callback: (context: TurnContext) => Promise): Promise; - membersAdded: string[]; - membersRemoved: string[]; -} - -// @public (undocumented) -export class UserDelay implements TestAction { - // (undocumented) - execute(_testAdapter: TestAdapter, _callback: (context: TurnContext) => Promise): Promise; + static $kind: string; + execute(testAdapter: TestAdapter, callback: (context: TurnContext) => Promise, inspector?: Inspector): Promise; timespan: number; } @@ -137,21 +339,38 @@ export interface UserDelayConfiguration { timespan?: number; } -// @public (undocumented) -export class UserSays implements TestAction { +// @public +export class UserSays extends TestAction implements UserSaysConfiguration { // (undocumented) - execute(testAdapter: TestAdapter, callback: (context: TurnContext) => Promise): Promise; + static $kind: string; + execute(testAdapter: TestAdapter, callback: (context: TurnContext) => Promise, inspector?: Inspector): Promise; + locale: string; text: string; user: string; } // @public (undocumented) -export class UserTyping implements TestAction { +export interface UserSaysConfiguration { + // (undocumented) + text?: string; + // (undocumented) + user?: string; +} + +// @public +export class UserTyping extends Configurable implements TestAction, UserTypingConfiguration { // (undocumented) - execute(testAdapter: TestAdapter, callback: (context: TurnContext) => Promise): Promise; + static $kind: string; + execute(testAdapter: TestAdapter, callback: (context: TurnContext) => Promise, inspector?: Inspector): Promise; user: string; } +// @public (undocumented) +export interface UserTypingConfiguration { + // (undocumented) + user?: string; +} + // (No @packageDocumentation comment for this package) diff --git a/libraries/botbuilder-dialogs-adaptive-testing/package.json b/libraries/botbuilder-dialogs-adaptive-testing/package.json index 4dd903a6f5..fee6d3332d 100644 --- a/libraries/botbuilder-dialogs-adaptive-testing/package.json +++ b/libraries/botbuilder-dialogs-adaptive-testing/package.json @@ -9,7 +9,8 @@ "lint": "eslint . --ext .js,.ts", "postbuild": "downlevel-dts lib _ts3.4/lib --checksum", "test": "npm-run-all build test:mocha", - "test:mocha": "mocha tests/*.test.js" + "test:mocha": "mocha tests/*.test.js", + "test:compat": "api-extractor run --verbose" }, "main": "./lib/index.js", "types": "./lib/index.d.ts", From 290a346e32c1ac49e4d314522f796c351012ef89 Mon Sep 17 00:00:00 2001 From: Michael Richardson Date: Wed, 19 May 2021 11:53:21 -0700 Subject: [PATCH 10/13] 10.x -> 16.x --- .github/workflows/tests.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 0bb3495bc6..77afa9aef3 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -21,7 +21,7 @@ jobs: strategy: matrix: os: [ubuntu, windows] - node-version: [10.x, 12.x, 14.x] + node-version: [12.x, 14.x, 16.x] steps: - uses: actions/checkout@v2 @@ -69,9 +69,9 @@ jobs: run: yarn test:consumer - name: yarn test:schemas - if: matrix.node-version == '10.x' + if: matrix.node-version == '16.x' run: yarn test:schemas - name: yarn test:compat - if: matrix.node-version == '10.x' + if: matrix.node-version == '16.x' run: yarn test:compat From 5dcc7a1b9fe1d59c9e5fb41ae54996770bcf75ca Mon Sep 17 00:00:00 2001 From: Michael Richardson Date: Wed, 19 May 2021 11:58:19 -0700 Subject: [PATCH 11/13] 12.x and 14.x only --- .github/workflows/tests.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 77afa9aef3..b83db52829 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -21,7 +21,7 @@ jobs: strategy: matrix: os: [ubuntu, windows] - node-version: [12.x, 14.x, 16.x] + node-version: [12.x, 14.x] steps: - uses: actions/checkout@v2 @@ -69,9 +69,9 @@ jobs: run: yarn test:consumer - name: yarn test:schemas - if: matrix.node-version == '16.x' + if: matrix.node-version == '12.x' run: yarn test:schemas - name: yarn test:compat - if: matrix.node-version == '16.x' + if: matrix.node-version == '14.x' run: yarn test:compat From f5fd6422045974bc6aa596b1d44a46387073bc7d Mon Sep 17 00:00:00 2001 From: Michael Richardson Date: Wed, 19 May 2021 13:25:48 -0700 Subject: [PATCH 12/13] organize api-extractor.json --- api-extractor.json | 44 ++ .../adaptive-expressions/api-extractor.json | 379 +----------------- .../api-extractor.json | 379 +----------------- libraries/botbuilder-ai/api-extractor.json | 379 +----------------- .../api-extractor.json | 379 +----------------- .../botbuilder-azure-blobs/api-extractor.json | 379 +----------------- .../api-extractor.json | 379 +----------------- libraries/botbuilder-azure/api-extractor.json | 367 +---------------- libraries/botbuilder-core/api-extractor.json | 379 +----------------- .../api-extractor.json | 379 +----------------- .../api-extractor.json | 379 +----------------- .../botbuilder-dialogs/api-extractor.json | 379 +----------------- .../botbuilder-testing/api-extractor.json | 379 +----------------- libraries/botbuilder/api-extractor.json | 379 +----------------- .../botframework-config/api-extractor.json | 379 +----------------- .../botframework-schema/api-extractor.json | 379 +----------------- .../botframework-streaming/api-extractor.json | 379 +----------------- 17 files changed, 107 insertions(+), 5989 deletions(-) create mode 100644 api-extractor.json diff --git a/api-extractor.json b/api-extractor.json new file mode 100644 index 0000000000..d2d33df54d --- /dev/null +++ b/api-extractor.json @@ -0,0 +1,44 @@ +{ + "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", + "mainEntryPointFilePath": "./libraries/botbuilder-core/lib/index.d.ts", + "bundledPackages": [ ], + "compiler": { + }, + "apiReport": { + "enabled": true + }, + "docModel": { + "enabled": false + }, + "dtsRollup": { + "enabled": false + }, + "tsdocMetadata": { + "enabled": false + }, + "messages": { + "compilerMessageReporting": { + }, + "extractorMessageReporting": { + "default": { + "logLevel": "error" + }, + "ae-missing-release-tag": { + "logLevel": "none" + }, + "ae-setter-with-docs": { + "logLevel": "warning", + "addToApiReportFile": true + }, + "ae-missing-getter": { + "logLevel": "warning", + "addToApiReportFile": true + } + }, + "tsdocMessageReporting": { + "default": { + "logLevel": "none" + } + } + } +} diff --git a/libraries/adaptive-expressions/api-extractor.json b/libraries/adaptive-expressions/api-extractor.json index 3c6a3b5585..0a7a404e16 100644 --- a/libraries/adaptive-expressions/api-extractor.json +++ b/libraries/adaptive-expressions/api-extractor.json @@ -1,375 +1,4 @@ -/** - * Config file for API Extractor. For more info, please visit: https://api-extractor.com - */ - { - "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", - - /** - * Optionally specifies another JSON config file that this file extends from. This provides a way for - * standard settings to be shared across multiple projects. - * - * If the path starts with "./" or "../", the path is resolved relative to the folder of the file that contains - * the "extends" field. Otherwise, the first path segment is interpreted as an NPM package name, and will be - * resolved using NodeJS require(). - * - * SUPPORTED TOKENS: none - * DEFAULT VALUE: "" - */ - // "extends": "./shared/api-extractor-base.json" - // "extends": "my-package/include/api-extractor-base.json" - - /** - * Determines the "" token that can be used with other config file settings. The project folder - * typically contains the tsconfig.json and package.json config files, but the path is user-defined. - * - * The path is resolved relative to the folder of the config file that contains the setting. - * - * The default value for "projectFolder" is the token "", which means the folder is determined by traversing - * parent folders, starting from the folder containing api-extractor.json, and stopping at the first folder - * that contains a tsconfig.json file. If a tsconfig.json file cannot be found in this way, then an error - * will be reported. - * - * SUPPORTED TOKENS: - * DEFAULT VALUE: "" - */ - // "projectFolder": "..", - - /** - * (REQUIRED) Specifies the .d.ts file to be used as the starting point for analysis. API Extractor - * analyzes the symbols exported by this module. - * - * The file extension must be ".d.ts" and not ".ts". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - */ - "mainEntryPointFilePath": "/lib/index.d.ts", - - /** - * A list of NPM package names whose exports should be treated as part of this package. - * - * For example, suppose that Webpack is used to generate a distributed bundle for the project "library1", - * and another NPM package "library2" is embedded in this bundle. Some types from library2 may become part - * of the exported API for library1, but by default API Extractor would generate a .d.ts rollup that explicitly - * imports library2. To avoid this, we can specify: - * - * "bundledPackages": [ "library2" ], - * - * This would direct API Extractor to embed those types directly in the .d.ts rollup, as if they had been - * local files for library1. - */ - "bundledPackages": [ ], - - /** - * Determines how the TypeScript compiler engine will be invoked by API Extractor. - */ - "compiler": { - /** - * Specifies the path to the tsconfig.json file to be used by API Extractor when analyzing the project. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * Note: This setting will be ignored if "overrideTsconfig" is used. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/tsconfig.json" - */ - // "tsconfigFilePath": "/tsconfig.json", - - /** - * Provides a compiler configuration that will be used instead of reading the tsconfig.json file from disk. - * The object must conform to the TypeScript tsconfig schema: - * - * http://json.schemastore.org/tsconfig - * - * If omitted, then the tsconfig.json file will be read from the "projectFolder". - * - * DEFAULT VALUE: no overrideTsconfig section - */ - // "overrideTsconfig": { - // . . . - // } - - /** - * This option causes the compiler to be invoked with the --skipLibCheck option. This option is not recommended - * and may cause API Extractor to produce incomplete or incorrect declarations, but it may be required when - * dependencies contain declarations that are incompatible with the TypeScript engine that API Extractor uses - * for its analysis. Where possible, the underlying issue should be fixed rather than relying on skipLibCheck. - * - * DEFAULT VALUE: false - */ - // "skipLibCheck": true, - }, - - /** - * Configures how the API report file (*.api.md) will be generated. - */ - "apiReport": { - /** - * (REQUIRED) Whether to generate an API report. - */ - "enabled": true, - - /** - * The filename for the API report files. It will be combined with "reportFolder" or "reportTempFolder" to produce - * a full file path. - * - * The file extension should be ".api.md", and the string should not contain a path separator such as "\" or "/". - * - * SUPPORTED TOKENS: , - * DEFAULT VALUE: ".api.md" - */ - // "reportFileName": ".api.md", - - /** - * Specifies the folder where the API report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * The API report file is normally tracked by Git. Changes to it can be used to trigger a branch policy, - * e.g. for an API review. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/etc/" - */ - // "reportFolder": "/etc/", - - /** - * Specifies the folder where the temporary report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * After the temporary file is written to disk, it is compared with the file in the "reportFolder". - * If they are different, a production build will fail. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/" - */ - // "reportTempFolder": "/temp/" - }, - - /** - * Configures how the doc model file (*.api.json) will be generated. - */ - "docModel": { - /** - * (REQUIRED) Whether to generate a doc model file. - */ - "enabled": true, - - /** - * The output path for the doc model file. The file extension should be ".api.json". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/.api.json" - */ - // "apiJsonFilePath": "/temp/.api.json" - }, - - /** - * Configures how the .d.ts rollup file will be generated. - */ - "dtsRollup": { - /** - * (REQUIRED) Whether to generate the .d.ts rollup file. - */ - "enabled": true, - - /** - * Specifies the output path for a .d.ts rollup file to be generated without any trimming. - * This file will include all declarations that are exported by the main entry point. - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/dist/.d.ts" - */ - // "untrimmedFilePath": "/dist/.d.ts", - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "beta" release. - * This file will include only declarations that are marked as "@public" or "@beta". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "betaTrimmedFilePath": "/dist/-beta.d.ts", - - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "public" release. - * This file will include only declarations that are marked as "@public". - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "publicTrimmedFilePath": "/dist/-public.d.ts", - - /** - * When a declaration is trimmed, by default it will be replaced by a code comment such as - * "Excluded from this release type: exampleMember". Set "omitTrimmingComments" to true to remove the - * declaration completely. - * - * DEFAULT VALUE: false - */ - // "omitTrimmingComments": true - }, - - /** - * Configures how the tsdoc-metadata.json file will be generated. - */ - "tsdocMetadata": { - /** - * Whether to generate the tsdoc-metadata.json file. - * - * DEFAULT VALUE: true - */ - // "enabled": true, - - /** - * Specifies where the TSDoc metadata file should be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * The default value is "", which causes the path to be automatically inferred from the "tsdocMetadata", - * "typings" or "main" fields of the project's package.json. If none of these fields are set, the lookup - * falls back to "tsdoc-metadata.json" in the package folder. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "tsdocMetadataFilePath": "/dist/tsdoc-metadata.json" - }, - - /** - * Specifies what type of newlines API Extractor should use when writing output files. By default, the output files - * will be written with Windows-style newlines. To use POSIX-style newlines, specify "lf" instead. - * To use the OS's default newline kind, specify "os". - * - * DEFAULT VALUE: "crlf" - */ - // "newlineKind": "crlf", - - /** - * Configures how API Extractor reports error and warning messages produced during analysis. - * - * There are three sources of messages: compiler messages, API Extractor messages, and TSDoc messages. - */ - "messages": { - /** - * Configures handling of diagnostic messages reported by the TypeScript compiler engine while analyzing - * the input .d.ts files. - * - * TypeScript message identifiers start with "TS" followed by an integer. For example: "TS2551" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "compilerMessageReporting": { - /** - * Configures the default routing for messages that don't match an explicit rule in this table. - */ - "default": { - /** - * Specifies whether the message should be written to the the tool's output log. Note that - * the "addToApiReportFile" property may supersede this option. - * - * Possible values: "error", "warning", "none" - * - * Errors cause the build to fail and return a nonzero exit code. Warnings cause a production build fail - * and return a nonzero exit code. For a non-production build (e.g. when "api-extractor run" includes - * the "--local" option), the warning is displayed but the build will not fail. - * - * DEFAULT VALUE: "warning" - */ - "logLevel": "warning", - - /** - * When addToApiReportFile is true: If API Extractor is configured to write an API report file (.api.md), - * then the message will be written inside that file; otherwise, the message is instead logged according to - * the "logLevel" option. - * - * DEFAULT VALUE: false - */ - // "addToApiReportFile": false - }, - - // "TS2551": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by API Extractor during its analysis. - * - * API Extractor message identifiers start with "ae-". For example: "ae-extra-release-tag" - * - * DEFAULT VALUE: See api-extractor-defaults.json for the complete table of extractorMessageReporting mappings - */ - "extractorMessageReporting": { - "default": { - "logLevel": "error", - // "addToApiReportFile": false - }, - - "ae-missing-release-tag": { - "logLevel": "none" - }, - - "ae-setter-with-docs": { - "logLevel": "warning", - "addToApiReportFile": true - }, - - "ae-missing-getter": { - "logLevel": "warning", - "addToApiReportFile": true - } - - // "ae-extra-release-tag": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by the TSDoc parser when analyzing code comments. - * - * TSDoc message identifiers start with "tsdoc-". For example: "tsdoc-link-tag-unescaped-text" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "tsdocMessageReporting": { - "default": { - "logLevel": "none" - // "addToApiReportFile": false - } - } - } -} +{ + "extends": "../../api-extractor.json", + "mainEntryPointFilePath": "./lib/index.d.ts" +} \ No newline at end of file diff --git a/libraries/botbuilder-ai-orchestrator/api-extractor.json b/libraries/botbuilder-ai-orchestrator/api-extractor.json index 3c6a3b5585..0a7a404e16 100644 --- a/libraries/botbuilder-ai-orchestrator/api-extractor.json +++ b/libraries/botbuilder-ai-orchestrator/api-extractor.json @@ -1,375 +1,4 @@ -/** - * Config file for API Extractor. For more info, please visit: https://api-extractor.com - */ - { - "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", - - /** - * Optionally specifies another JSON config file that this file extends from. This provides a way for - * standard settings to be shared across multiple projects. - * - * If the path starts with "./" or "../", the path is resolved relative to the folder of the file that contains - * the "extends" field. Otherwise, the first path segment is interpreted as an NPM package name, and will be - * resolved using NodeJS require(). - * - * SUPPORTED TOKENS: none - * DEFAULT VALUE: "" - */ - // "extends": "./shared/api-extractor-base.json" - // "extends": "my-package/include/api-extractor-base.json" - - /** - * Determines the "" token that can be used with other config file settings. The project folder - * typically contains the tsconfig.json and package.json config files, but the path is user-defined. - * - * The path is resolved relative to the folder of the config file that contains the setting. - * - * The default value for "projectFolder" is the token "", which means the folder is determined by traversing - * parent folders, starting from the folder containing api-extractor.json, and stopping at the first folder - * that contains a tsconfig.json file. If a tsconfig.json file cannot be found in this way, then an error - * will be reported. - * - * SUPPORTED TOKENS: - * DEFAULT VALUE: "" - */ - // "projectFolder": "..", - - /** - * (REQUIRED) Specifies the .d.ts file to be used as the starting point for analysis. API Extractor - * analyzes the symbols exported by this module. - * - * The file extension must be ".d.ts" and not ".ts". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - */ - "mainEntryPointFilePath": "/lib/index.d.ts", - - /** - * A list of NPM package names whose exports should be treated as part of this package. - * - * For example, suppose that Webpack is used to generate a distributed bundle for the project "library1", - * and another NPM package "library2" is embedded in this bundle. Some types from library2 may become part - * of the exported API for library1, but by default API Extractor would generate a .d.ts rollup that explicitly - * imports library2. To avoid this, we can specify: - * - * "bundledPackages": [ "library2" ], - * - * This would direct API Extractor to embed those types directly in the .d.ts rollup, as if they had been - * local files for library1. - */ - "bundledPackages": [ ], - - /** - * Determines how the TypeScript compiler engine will be invoked by API Extractor. - */ - "compiler": { - /** - * Specifies the path to the tsconfig.json file to be used by API Extractor when analyzing the project. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * Note: This setting will be ignored if "overrideTsconfig" is used. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/tsconfig.json" - */ - // "tsconfigFilePath": "/tsconfig.json", - - /** - * Provides a compiler configuration that will be used instead of reading the tsconfig.json file from disk. - * The object must conform to the TypeScript tsconfig schema: - * - * http://json.schemastore.org/tsconfig - * - * If omitted, then the tsconfig.json file will be read from the "projectFolder". - * - * DEFAULT VALUE: no overrideTsconfig section - */ - // "overrideTsconfig": { - // . . . - // } - - /** - * This option causes the compiler to be invoked with the --skipLibCheck option. This option is not recommended - * and may cause API Extractor to produce incomplete or incorrect declarations, but it may be required when - * dependencies contain declarations that are incompatible with the TypeScript engine that API Extractor uses - * for its analysis. Where possible, the underlying issue should be fixed rather than relying on skipLibCheck. - * - * DEFAULT VALUE: false - */ - // "skipLibCheck": true, - }, - - /** - * Configures how the API report file (*.api.md) will be generated. - */ - "apiReport": { - /** - * (REQUIRED) Whether to generate an API report. - */ - "enabled": true, - - /** - * The filename for the API report files. It will be combined with "reportFolder" or "reportTempFolder" to produce - * a full file path. - * - * The file extension should be ".api.md", and the string should not contain a path separator such as "\" or "/". - * - * SUPPORTED TOKENS: , - * DEFAULT VALUE: ".api.md" - */ - // "reportFileName": ".api.md", - - /** - * Specifies the folder where the API report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * The API report file is normally tracked by Git. Changes to it can be used to trigger a branch policy, - * e.g. for an API review. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/etc/" - */ - // "reportFolder": "/etc/", - - /** - * Specifies the folder where the temporary report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * After the temporary file is written to disk, it is compared with the file in the "reportFolder". - * If they are different, a production build will fail. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/" - */ - // "reportTempFolder": "/temp/" - }, - - /** - * Configures how the doc model file (*.api.json) will be generated. - */ - "docModel": { - /** - * (REQUIRED) Whether to generate a doc model file. - */ - "enabled": true, - - /** - * The output path for the doc model file. The file extension should be ".api.json". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/.api.json" - */ - // "apiJsonFilePath": "/temp/.api.json" - }, - - /** - * Configures how the .d.ts rollup file will be generated. - */ - "dtsRollup": { - /** - * (REQUIRED) Whether to generate the .d.ts rollup file. - */ - "enabled": true, - - /** - * Specifies the output path for a .d.ts rollup file to be generated without any trimming. - * This file will include all declarations that are exported by the main entry point. - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/dist/.d.ts" - */ - // "untrimmedFilePath": "/dist/.d.ts", - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "beta" release. - * This file will include only declarations that are marked as "@public" or "@beta". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "betaTrimmedFilePath": "/dist/-beta.d.ts", - - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "public" release. - * This file will include only declarations that are marked as "@public". - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "publicTrimmedFilePath": "/dist/-public.d.ts", - - /** - * When a declaration is trimmed, by default it will be replaced by a code comment such as - * "Excluded from this release type: exampleMember". Set "omitTrimmingComments" to true to remove the - * declaration completely. - * - * DEFAULT VALUE: false - */ - // "omitTrimmingComments": true - }, - - /** - * Configures how the tsdoc-metadata.json file will be generated. - */ - "tsdocMetadata": { - /** - * Whether to generate the tsdoc-metadata.json file. - * - * DEFAULT VALUE: true - */ - // "enabled": true, - - /** - * Specifies where the TSDoc metadata file should be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * The default value is "", which causes the path to be automatically inferred from the "tsdocMetadata", - * "typings" or "main" fields of the project's package.json. If none of these fields are set, the lookup - * falls back to "tsdoc-metadata.json" in the package folder. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "tsdocMetadataFilePath": "/dist/tsdoc-metadata.json" - }, - - /** - * Specifies what type of newlines API Extractor should use when writing output files. By default, the output files - * will be written with Windows-style newlines. To use POSIX-style newlines, specify "lf" instead. - * To use the OS's default newline kind, specify "os". - * - * DEFAULT VALUE: "crlf" - */ - // "newlineKind": "crlf", - - /** - * Configures how API Extractor reports error and warning messages produced during analysis. - * - * There are three sources of messages: compiler messages, API Extractor messages, and TSDoc messages. - */ - "messages": { - /** - * Configures handling of diagnostic messages reported by the TypeScript compiler engine while analyzing - * the input .d.ts files. - * - * TypeScript message identifiers start with "TS" followed by an integer. For example: "TS2551" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "compilerMessageReporting": { - /** - * Configures the default routing for messages that don't match an explicit rule in this table. - */ - "default": { - /** - * Specifies whether the message should be written to the the tool's output log. Note that - * the "addToApiReportFile" property may supersede this option. - * - * Possible values: "error", "warning", "none" - * - * Errors cause the build to fail and return a nonzero exit code. Warnings cause a production build fail - * and return a nonzero exit code. For a non-production build (e.g. when "api-extractor run" includes - * the "--local" option), the warning is displayed but the build will not fail. - * - * DEFAULT VALUE: "warning" - */ - "logLevel": "warning", - - /** - * When addToApiReportFile is true: If API Extractor is configured to write an API report file (.api.md), - * then the message will be written inside that file; otherwise, the message is instead logged according to - * the "logLevel" option. - * - * DEFAULT VALUE: false - */ - // "addToApiReportFile": false - }, - - // "TS2551": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by API Extractor during its analysis. - * - * API Extractor message identifiers start with "ae-". For example: "ae-extra-release-tag" - * - * DEFAULT VALUE: See api-extractor-defaults.json for the complete table of extractorMessageReporting mappings - */ - "extractorMessageReporting": { - "default": { - "logLevel": "error", - // "addToApiReportFile": false - }, - - "ae-missing-release-tag": { - "logLevel": "none" - }, - - "ae-setter-with-docs": { - "logLevel": "warning", - "addToApiReportFile": true - }, - - "ae-missing-getter": { - "logLevel": "warning", - "addToApiReportFile": true - } - - // "ae-extra-release-tag": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by the TSDoc parser when analyzing code comments. - * - * TSDoc message identifiers start with "tsdoc-". For example: "tsdoc-link-tag-unescaped-text" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "tsdocMessageReporting": { - "default": { - "logLevel": "none" - // "addToApiReportFile": false - } - } - } -} +{ + "extends": "../../api-extractor.json", + "mainEntryPointFilePath": "./lib/index.d.ts" +} \ No newline at end of file diff --git a/libraries/botbuilder-ai/api-extractor.json b/libraries/botbuilder-ai/api-extractor.json index 3c6a3b5585..0a7a404e16 100644 --- a/libraries/botbuilder-ai/api-extractor.json +++ b/libraries/botbuilder-ai/api-extractor.json @@ -1,375 +1,4 @@ -/** - * Config file for API Extractor. For more info, please visit: https://api-extractor.com - */ - { - "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", - - /** - * Optionally specifies another JSON config file that this file extends from. This provides a way for - * standard settings to be shared across multiple projects. - * - * If the path starts with "./" or "../", the path is resolved relative to the folder of the file that contains - * the "extends" field. Otherwise, the first path segment is interpreted as an NPM package name, and will be - * resolved using NodeJS require(). - * - * SUPPORTED TOKENS: none - * DEFAULT VALUE: "" - */ - // "extends": "./shared/api-extractor-base.json" - // "extends": "my-package/include/api-extractor-base.json" - - /** - * Determines the "" token that can be used with other config file settings. The project folder - * typically contains the tsconfig.json and package.json config files, but the path is user-defined. - * - * The path is resolved relative to the folder of the config file that contains the setting. - * - * The default value for "projectFolder" is the token "", which means the folder is determined by traversing - * parent folders, starting from the folder containing api-extractor.json, and stopping at the first folder - * that contains a tsconfig.json file. If a tsconfig.json file cannot be found in this way, then an error - * will be reported. - * - * SUPPORTED TOKENS: - * DEFAULT VALUE: "" - */ - // "projectFolder": "..", - - /** - * (REQUIRED) Specifies the .d.ts file to be used as the starting point for analysis. API Extractor - * analyzes the symbols exported by this module. - * - * The file extension must be ".d.ts" and not ".ts". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - */ - "mainEntryPointFilePath": "/lib/index.d.ts", - - /** - * A list of NPM package names whose exports should be treated as part of this package. - * - * For example, suppose that Webpack is used to generate a distributed bundle for the project "library1", - * and another NPM package "library2" is embedded in this bundle. Some types from library2 may become part - * of the exported API for library1, but by default API Extractor would generate a .d.ts rollup that explicitly - * imports library2. To avoid this, we can specify: - * - * "bundledPackages": [ "library2" ], - * - * This would direct API Extractor to embed those types directly in the .d.ts rollup, as if they had been - * local files for library1. - */ - "bundledPackages": [ ], - - /** - * Determines how the TypeScript compiler engine will be invoked by API Extractor. - */ - "compiler": { - /** - * Specifies the path to the tsconfig.json file to be used by API Extractor when analyzing the project. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * Note: This setting will be ignored if "overrideTsconfig" is used. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/tsconfig.json" - */ - // "tsconfigFilePath": "/tsconfig.json", - - /** - * Provides a compiler configuration that will be used instead of reading the tsconfig.json file from disk. - * The object must conform to the TypeScript tsconfig schema: - * - * http://json.schemastore.org/tsconfig - * - * If omitted, then the tsconfig.json file will be read from the "projectFolder". - * - * DEFAULT VALUE: no overrideTsconfig section - */ - // "overrideTsconfig": { - // . . . - // } - - /** - * This option causes the compiler to be invoked with the --skipLibCheck option. This option is not recommended - * and may cause API Extractor to produce incomplete or incorrect declarations, but it may be required when - * dependencies contain declarations that are incompatible with the TypeScript engine that API Extractor uses - * for its analysis. Where possible, the underlying issue should be fixed rather than relying on skipLibCheck. - * - * DEFAULT VALUE: false - */ - // "skipLibCheck": true, - }, - - /** - * Configures how the API report file (*.api.md) will be generated. - */ - "apiReport": { - /** - * (REQUIRED) Whether to generate an API report. - */ - "enabled": true, - - /** - * The filename for the API report files. It will be combined with "reportFolder" or "reportTempFolder" to produce - * a full file path. - * - * The file extension should be ".api.md", and the string should not contain a path separator such as "\" or "/". - * - * SUPPORTED TOKENS: , - * DEFAULT VALUE: ".api.md" - */ - // "reportFileName": ".api.md", - - /** - * Specifies the folder where the API report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * The API report file is normally tracked by Git. Changes to it can be used to trigger a branch policy, - * e.g. for an API review. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/etc/" - */ - // "reportFolder": "/etc/", - - /** - * Specifies the folder where the temporary report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * After the temporary file is written to disk, it is compared with the file in the "reportFolder". - * If they are different, a production build will fail. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/" - */ - // "reportTempFolder": "/temp/" - }, - - /** - * Configures how the doc model file (*.api.json) will be generated. - */ - "docModel": { - /** - * (REQUIRED) Whether to generate a doc model file. - */ - "enabled": true, - - /** - * The output path for the doc model file. The file extension should be ".api.json". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/.api.json" - */ - // "apiJsonFilePath": "/temp/.api.json" - }, - - /** - * Configures how the .d.ts rollup file will be generated. - */ - "dtsRollup": { - /** - * (REQUIRED) Whether to generate the .d.ts rollup file. - */ - "enabled": true, - - /** - * Specifies the output path for a .d.ts rollup file to be generated without any trimming. - * This file will include all declarations that are exported by the main entry point. - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/dist/.d.ts" - */ - // "untrimmedFilePath": "/dist/.d.ts", - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "beta" release. - * This file will include only declarations that are marked as "@public" or "@beta". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "betaTrimmedFilePath": "/dist/-beta.d.ts", - - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "public" release. - * This file will include only declarations that are marked as "@public". - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "publicTrimmedFilePath": "/dist/-public.d.ts", - - /** - * When a declaration is trimmed, by default it will be replaced by a code comment such as - * "Excluded from this release type: exampleMember". Set "omitTrimmingComments" to true to remove the - * declaration completely. - * - * DEFAULT VALUE: false - */ - // "omitTrimmingComments": true - }, - - /** - * Configures how the tsdoc-metadata.json file will be generated. - */ - "tsdocMetadata": { - /** - * Whether to generate the tsdoc-metadata.json file. - * - * DEFAULT VALUE: true - */ - // "enabled": true, - - /** - * Specifies where the TSDoc metadata file should be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * The default value is "", which causes the path to be automatically inferred from the "tsdocMetadata", - * "typings" or "main" fields of the project's package.json. If none of these fields are set, the lookup - * falls back to "tsdoc-metadata.json" in the package folder. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "tsdocMetadataFilePath": "/dist/tsdoc-metadata.json" - }, - - /** - * Specifies what type of newlines API Extractor should use when writing output files. By default, the output files - * will be written with Windows-style newlines. To use POSIX-style newlines, specify "lf" instead. - * To use the OS's default newline kind, specify "os". - * - * DEFAULT VALUE: "crlf" - */ - // "newlineKind": "crlf", - - /** - * Configures how API Extractor reports error and warning messages produced during analysis. - * - * There are three sources of messages: compiler messages, API Extractor messages, and TSDoc messages. - */ - "messages": { - /** - * Configures handling of diagnostic messages reported by the TypeScript compiler engine while analyzing - * the input .d.ts files. - * - * TypeScript message identifiers start with "TS" followed by an integer. For example: "TS2551" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "compilerMessageReporting": { - /** - * Configures the default routing for messages that don't match an explicit rule in this table. - */ - "default": { - /** - * Specifies whether the message should be written to the the tool's output log. Note that - * the "addToApiReportFile" property may supersede this option. - * - * Possible values: "error", "warning", "none" - * - * Errors cause the build to fail and return a nonzero exit code. Warnings cause a production build fail - * and return a nonzero exit code. For a non-production build (e.g. when "api-extractor run" includes - * the "--local" option), the warning is displayed but the build will not fail. - * - * DEFAULT VALUE: "warning" - */ - "logLevel": "warning", - - /** - * When addToApiReportFile is true: If API Extractor is configured to write an API report file (.api.md), - * then the message will be written inside that file; otherwise, the message is instead logged according to - * the "logLevel" option. - * - * DEFAULT VALUE: false - */ - // "addToApiReportFile": false - }, - - // "TS2551": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by API Extractor during its analysis. - * - * API Extractor message identifiers start with "ae-". For example: "ae-extra-release-tag" - * - * DEFAULT VALUE: See api-extractor-defaults.json for the complete table of extractorMessageReporting mappings - */ - "extractorMessageReporting": { - "default": { - "logLevel": "error", - // "addToApiReportFile": false - }, - - "ae-missing-release-tag": { - "logLevel": "none" - }, - - "ae-setter-with-docs": { - "logLevel": "warning", - "addToApiReportFile": true - }, - - "ae-missing-getter": { - "logLevel": "warning", - "addToApiReportFile": true - } - - // "ae-extra-release-tag": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by the TSDoc parser when analyzing code comments. - * - * TSDoc message identifiers start with "tsdoc-". For example: "tsdoc-link-tag-unescaped-text" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "tsdocMessageReporting": { - "default": { - "logLevel": "none" - // "addToApiReportFile": false - } - } - } -} +{ + "extends": "../../api-extractor.json", + "mainEntryPointFilePath": "./lib/index.d.ts" +} \ No newline at end of file diff --git a/libraries/botbuilder-applicationinsights/api-extractor.json b/libraries/botbuilder-applicationinsights/api-extractor.json index 3c6a3b5585..0a7a404e16 100644 --- a/libraries/botbuilder-applicationinsights/api-extractor.json +++ b/libraries/botbuilder-applicationinsights/api-extractor.json @@ -1,375 +1,4 @@ -/** - * Config file for API Extractor. For more info, please visit: https://api-extractor.com - */ - { - "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", - - /** - * Optionally specifies another JSON config file that this file extends from. This provides a way for - * standard settings to be shared across multiple projects. - * - * If the path starts with "./" or "../", the path is resolved relative to the folder of the file that contains - * the "extends" field. Otherwise, the first path segment is interpreted as an NPM package name, and will be - * resolved using NodeJS require(). - * - * SUPPORTED TOKENS: none - * DEFAULT VALUE: "" - */ - // "extends": "./shared/api-extractor-base.json" - // "extends": "my-package/include/api-extractor-base.json" - - /** - * Determines the "" token that can be used with other config file settings. The project folder - * typically contains the tsconfig.json and package.json config files, but the path is user-defined. - * - * The path is resolved relative to the folder of the config file that contains the setting. - * - * The default value for "projectFolder" is the token "", which means the folder is determined by traversing - * parent folders, starting from the folder containing api-extractor.json, and stopping at the first folder - * that contains a tsconfig.json file. If a tsconfig.json file cannot be found in this way, then an error - * will be reported. - * - * SUPPORTED TOKENS: - * DEFAULT VALUE: "" - */ - // "projectFolder": "..", - - /** - * (REQUIRED) Specifies the .d.ts file to be used as the starting point for analysis. API Extractor - * analyzes the symbols exported by this module. - * - * The file extension must be ".d.ts" and not ".ts". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - */ - "mainEntryPointFilePath": "/lib/index.d.ts", - - /** - * A list of NPM package names whose exports should be treated as part of this package. - * - * For example, suppose that Webpack is used to generate a distributed bundle for the project "library1", - * and another NPM package "library2" is embedded in this bundle. Some types from library2 may become part - * of the exported API for library1, but by default API Extractor would generate a .d.ts rollup that explicitly - * imports library2. To avoid this, we can specify: - * - * "bundledPackages": [ "library2" ], - * - * This would direct API Extractor to embed those types directly in the .d.ts rollup, as if they had been - * local files for library1. - */ - "bundledPackages": [ ], - - /** - * Determines how the TypeScript compiler engine will be invoked by API Extractor. - */ - "compiler": { - /** - * Specifies the path to the tsconfig.json file to be used by API Extractor when analyzing the project. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * Note: This setting will be ignored if "overrideTsconfig" is used. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/tsconfig.json" - */ - // "tsconfigFilePath": "/tsconfig.json", - - /** - * Provides a compiler configuration that will be used instead of reading the tsconfig.json file from disk. - * The object must conform to the TypeScript tsconfig schema: - * - * http://json.schemastore.org/tsconfig - * - * If omitted, then the tsconfig.json file will be read from the "projectFolder". - * - * DEFAULT VALUE: no overrideTsconfig section - */ - // "overrideTsconfig": { - // . . . - // } - - /** - * This option causes the compiler to be invoked with the --skipLibCheck option. This option is not recommended - * and may cause API Extractor to produce incomplete or incorrect declarations, but it may be required when - * dependencies contain declarations that are incompatible with the TypeScript engine that API Extractor uses - * for its analysis. Where possible, the underlying issue should be fixed rather than relying on skipLibCheck. - * - * DEFAULT VALUE: false - */ - // "skipLibCheck": true, - }, - - /** - * Configures how the API report file (*.api.md) will be generated. - */ - "apiReport": { - /** - * (REQUIRED) Whether to generate an API report. - */ - "enabled": true, - - /** - * The filename for the API report files. It will be combined with "reportFolder" or "reportTempFolder" to produce - * a full file path. - * - * The file extension should be ".api.md", and the string should not contain a path separator such as "\" or "/". - * - * SUPPORTED TOKENS: , - * DEFAULT VALUE: ".api.md" - */ - // "reportFileName": ".api.md", - - /** - * Specifies the folder where the API report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * The API report file is normally tracked by Git. Changes to it can be used to trigger a branch policy, - * e.g. for an API review. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/etc/" - */ - // "reportFolder": "/etc/", - - /** - * Specifies the folder where the temporary report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * After the temporary file is written to disk, it is compared with the file in the "reportFolder". - * If they are different, a production build will fail. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/" - */ - // "reportTempFolder": "/temp/" - }, - - /** - * Configures how the doc model file (*.api.json) will be generated. - */ - "docModel": { - /** - * (REQUIRED) Whether to generate a doc model file. - */ - "enabled": true, - - /** - * The output path for the doc model file. The file extension should be ".api.json". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/.api.json" - */ - // "apiJsonFilePath": "/temp/.api.json" - }, - - /** - * Configures how the .d.ts rollup file will be generated. - */ - "dtsRollup": { - /** - * (REQUIRED) Whether to generate the .d.ts rollup file. - */ - "enabled": true, - - /** - * Specifies the output path for a .d.ts rollup file to be generated without any trimming. - * This file will include all declarations that are exported by the main entry point. - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/dist/.d.ts" - */ - // "untrimmedFilePath": "/dist/.d.ts", - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "beta" release. - * This file will include only declarations that are marked as "@public" or "@beta". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "betaTrimmedFilePath": "/dist/-beta.d.ts", - - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "public" release. - * This file will include only declarations that are marked as "@public". - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "publicTrimmedFilePath": "/dist/-public.d.ts", - - /** - * When a declaration is trimmed, by default it will be replaced by a code comment such as - * "Excluded from this release type: exampleMember". Set "omitTrimmingComments" to true to remove the - * declaration completely. - * - * DEFAULT VALUE: false - */ - // "omitTrimmingComments": true - }, - - /** - * Configures how the tsdoc-metadata.json file will be generated. - */ - "tsdocMetadata": { - /** - * Whether to generate the tsdoc-metadata.json file. - * - * DEFAULT VALUE: true - */ - // "enabled": true, - - /** - * Specifies where the TSDoc metadata file should be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * The default value is "", which causes the path to be automatically inferred from the "tsdocMetadata", - * "typings" or "main" fields of the project's package.json. If none of these fields are set, the lookup - * falls back to "tsdoc-metadata.json" in the package folder. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "tsdocMetadataFilePath": "/dist/tsdoc-metadata.json" - }, - - /** - * Specifies what type of newlines API Extractor should use when writing output files. By default, the output files - * will be written with Windows-style newlines. To use POSIX-style newlines, specify "lf" instead. - * To use the OS's default newline kind, specify "os". - * - * DEFAULT VALUE: "crlf" - */ - // "newlineKind": "crlf", - - /** - * Configures how API Extractor reports error and warning messages produced during analysis. - * - * There are three sources of messages: compiler messages, API Extractor messages, and TSDoc messages. - */ - "messages": { - /** - * Configures handling of diagnostic messages reported by the TypeScript compiler engine while analyzing - * the input .d.ts files. - * - * TypeScript message identifiers start with "TS" followed by an integer. For example: "TS2551" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "compilerMessageReporting": { - /** - * Configures the default routing for messages that don't match an explicit rule in this table. - */ - "default": { - /** - * Specifies whether the message should be written to the the tool's output log. Note that - * the "addToApiReportFile" property may supersede this option. - * - * Possible values: "error", "warning", "none" - * - * Errors cause the build to fail and return a nonzero exit code. Warnings cause a production build fail - * and return a nonzero exit code. For a non-production build (e.g. when "api-extractor run" includes - * the "--local" option), the warning is displayed but the build will not fail. - * - * DEFAULT VALUE: "warning" - */ - "logLevel": "warning", - - /** - * When addToApiReportFile is true: If API Extractor is configured to write an API report file (.api.md), - * then the message will be written inside that file; otherwise, the message is instead logged according to - * the "logLevel" option. - * - * DEFAULT VALUE: false - */ - // "addToApiReportFile": false - }, - - // "TS2551": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by API Extractor during its analysis. - * - * API Extractor message identifiers start with "ae-". For example: "ae-extra-release-tag" - * - * DEFAULT VALUE: See api-extractor-defaults.json for the complete table of extractorMessageReporting mappings - */ - "extractorMessageReporting": { - "default": { - "logLevel": "error", - // "addToApiReportFile": false - }, - - "ae-missing-release-tag": { - "logLevel": "none" - }, - - "ae-setter-with-docs": { - "logLevel": "warning", - "addToApiReportFile": true - }, - - "ae-missing-getter": { - "logLevel": "warning", - "addToApiReportFile": true - } - - // "ae-extra-release-tag": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by the TSDoc parser when analyzing code comments. - * - * TSDoc message identifiers start with "tsdoc-". For example: "tsdoc-link-tag-unescaped-text" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "tsdocMessageReporting": { - "default": { - "logLevel": "none" - // "addToApiReportFile": false - } - } - } -} +{ + "extends": "../../api-extractor.json", + "mainEntryPointFilePath": "./lib/index.d.ts" +} \ No newline at end of file diff --git a/libraries/botbuilder-azure-blobs/api-extractor.json b/libraries/botbuilder-azure-blobs/api-extractor.json index 3c6a3b5585..0a7a404e16 100644 --- a/libraries/botbuilder-azure-blobs/api-extractor.json +++ b/libraries/botbuilder-azure-blobs/api-extractor.json @@ -1,375 +1,4 @@ -/** - * Config file for API Extractor. For more info, please visit: https://api-extractor.com - */ - { - "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", - - /** - * Optionally specifies another JSON config file that this file extends from. This provides a way for - * standard settings to be shared across multiple projects. - * - * If the path starts with "./" or "../", the path is resolved relative to the folder of the file that contains - * the "extends" field. Otherwise, the first path segment is interpreted as an NPM package name, and will be - * resolved using NodeJS require(). - * - * SUPPORTED TOKENS: none - * DEFAULT VALUE: "" - */ - // "extends": "./shared/api-extractor-base.json" - // "extends": "my-package/include/api-extractor-base.json" - - /** - * Determines the "" token that can be used with other config file settings. The project folder - * typically contains the tsconfig.json and package.json config files, but the path is user-defined. - * - * The path is resolved relative to the folder of the config file that contains the setting. - * - * The default value for "projectFolder" is the token "", which means the folder is determined by traversing - * parent folders, starting from the folder containing api-extractor.json, and stopping at the first folder - * that contains a tsconfig.json file. If a tsconfig.json file cannot be found in this way, then an error - * will be reported. - * - * SUPPORTED TOKENS: - * DEFAULT VALUE: "" - */ - // "projectFolder": "..", - - /** - * (REQUIRED) Specifies the .d.ts file to be used as the starting point for analysis. API Extractor - * analyzes the symbols exported by this module. - * - * The file extension must be ".d.ts" and not ".ts". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - */ - "mainEntryPointFilePath": "/lib/index.d.ts", - - /** - * A list of NPM package names whose exports should be treated as part of this package. - * - * For example, suppose that Webpack is used to generate a distributed bundle for the project "library1", - * and another NPM package "library2" is embedded in this bundle. Some types from library2 may become part - * of the exported API for library1, but by default API Extractor would generate a .d.ts rollup that explicitly - * imports library2. To avoid this, we can specify: - * - * "bundledPackages": [ "library2" ], - * - * This would direct API Extractor to embed those types directly in the .d.ts rollup, as if they had been - * local files for library1. - */ - "bundledPackages": [ ], - - /** - * Determines how the TypeScript compiler engine will be invoked by API Extractor. - */ - "compiler": { - /** - * Specifies the path to the tsconfig.json file to be used by API Extractor when analyzing the project. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * Note: This setting will be ignored if "overrideTsconfig" is used. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/tsconfig.json" - */ - // "tsconfigFilePath": "/tsconfig.json", - - /** - * Provides a compiler configuration that will be used instead of reading the tsconfig.json file from disk. - * The object must conform to the TypeScript tsconfig schema: - * - * http://json.schemastore.org/tsconfig - * - * If omitted, then the tsconfig.json file will be read from the "projectFolder". - * - * DEFAULT VALUE: no overrideTsconfig section - */ - // "overrideTsconfig": { - // . . . - // } - - /** - * This option causes the compiler to be invoked with the --skipLibCheck option. This option is not recommended - * and may cause API Extractor to produce incomplete or incorrect declarations, but it may be required when - * dependencies contain declarations that are incompatible with the TypeScript engine that API Extractor uses - * for its analysis. Where possible, the underlying issue should be fixed rather than relying on skipLibCheck. - * - * DEFAULT VALUE: false - */ - // "skipLibCheck": true, - }, - - /** - * Configures how the API report file (*.api.md) will be generated. - */ - "apiReport": { - /** - * (REQUIRED) Whether to generate an API report. - */ - "enabled": true, - - /** - * The filename for the API report files. It will be combined with "reportFolder" or "reportTempFolder" to produce - * a full file path. - * - * The file extension should be ".api.md", and the string should not contain a path separator such as "\" or "/". - * - * SUPPORTED TOKENS: , - * DEFAULT VALUE: ".api.md" - */ - // "reportFileName": ".api.md", - - /** - * Specifies the folder where the API report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * The API report file is normally tracked by Git. Changes to it can be used to trigger a branch policy, - * e.g. for an API review. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/etc/" - */ - // "reportFolder": "/etc/", - - /** - * Specifies the folder where the temporary report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * After the temporary file is written to disk, it is compared with the file in the "reportFolder". - * If they are different, a production build will fail. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/" - */ - // "reportTempFolder": "/temp/" - }, - - /** - * Configures how the doc model file (*.api.json) will be generated. - */ - "docModel": { - /** - * (REQUIRED) Whether to generate a doc model file. - */ - "enabled": true, - - /** - * The output path for the doc model file. The file extension should be ".api.json". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/.api.json" - */ - // "apiJsonFilePath": "/temp/.api.json" - }, - - /** - * Configures how the .d.ts rollup file will be generated. - */ - "dtsRollup": { - /** - * (REQUIRED) Whether to generate the .d.ts rollup file. - */ - "enabled": true, - - /** - * Specifies the output path for a .d.ts rollup file to be generated without any trimming. - * This file will include all declarations that are exported by the main entry point. - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/dist/.d.ts" - */ - // "untrimmedFilePath": "/dist/.d.ts", - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "beta" release. - * This file will include only declarations that are marked as "@public" or "@beta". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "betaTrimmedFilePath": "/dist/-beta.d.ts", - - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "public" release. - * This file will include only declarations that are marked as "@public". - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "publicTrimmedFilePath": "/dist/-public.d.ts", - - /** - * When a declaration is trimmed, by default it will be replaced by a code comment such as - * "Excluded from this release type: exampleMember". Set "omitTrimmingComments" to true to remove the - * declaration completely. - * - * DEFAULT VALUE: false - */ - // "omitTrimmingComments": true - }, - - /** - * Configures how the tsdoc-metadata.json file will be generated. - */ - "tsdocMetadata": { - /** - * Whether to generate the tsdoc-metadata.json file. - * - * DEFAULT VALUE: true - */ - // "enabled": true, - - /** - * Specifies where the TSDoc metadata file should be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * The default value is "", which causes the path to be automatically inferred from the "tsdocMetadata", - * "typings" or "main" fields of the project's package.json. If none of these fields are set, the lookup - * falls back to "tsdoc-metadata.json" in the package folder. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "tsdocMetadataFilePath": "/dist/tsdoc-metadata.json" - }, - - /** - * Specifies what type of newlines API Extractor should use when writing output files. By default, the output files - * will be written with Windows-style newlines. To use POSIX-style newlines, specify "lf" instead. - * To use the OS's default newline kind, specify "os". - * - * DEFAULT VALUE: "crlf" - */ - // "newlineKind": "crlf", - - /** - * Configures how API Extractor reports error and warning messages produced during analysis. - * - * There are three sources of messages: compiler messages, API Extractor messages, and TSDoc messages. - */ - "messages": { - /** - * Configures handling of diagnostic messages reported by the TypeScript compiler engine while analyzing - * the input .d.ts files. - * - * TypeScript message identifiers start with "TS" followed by an integer. For example: "TS2551" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "compilerMessageReporting": { - /** - * Configures the default routing for messages that don't match an explicit rule in this table. - */ - "default": { - /** - * Specifies whether the message should be written to the the tool's output log. Note that - * the "addToApiReportFile" property may supersede this option. - * - * Possible values: "error", "warning", "none" - * - * Errors cause the build to fail and return a nonzero exit code. Warnings cause a production build fail - * and return a nonzero exit code. For a non-production build (e.g. when "api-extractor run" includes - * the "--local" option), the warning is displayed but the build will not fail. - * - * DEFAULT VALUE: "warning" - */ - "logLevel": "warning", - - /** - * When addToApiReportFile is true: If API Extractor is configured to write an API report file (.api.md), - * then the message will be written inside that file; otherwise, the message is instead logged according to - * the "logLevel" option. - * - * DEFAULT VALUE: false - */ - // "addToApiReportFile": false - }, - - // "TS2551": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by API Extractor during its analysis. - * - * API Extractor message identifiers start with "ae-". For example: "ae-extra-release-tag" - * - * DEFAULT VALUE: See api-extractor-defaults.json for the complete table of extractorMessageReporting mappings - */ - "extractorMessageReporting": { - "default": { - "logLevel": "error", - // "addToApiReportFile": false - }, - - "ae-missing-release-tag": { - "logLevel": "none" - }, - - "ae-setter-with-docs": { - "logLevel": "warning", - "addToApiReportFile": true - }, - - "ae-missing-getter": { - "logLevel": "warning", - "addToApiReportFile": true - } - - // "ae-extra-release-tag": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by the TSDoc parser when analyzing code comments. - * - * TSDoc message identifiers start with "tsdoc-". For example: "tsdoc-link-tag-unescaped-text" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "tsdocMessageReporting": { - "default": { - "logLevel": "none" - // "addToApiReportFile": false - } - } - } -} +{ + "extends": "../../api-extractor.json", + "mainEntryPointFilePath": "./lib/index.d.ts" +} \ No newline at end of file diff --git a/libraries/botbuilder-azure-queues/api-extractor.json b/libraries/botbuilder-azure-queues/api-extractor.json index 3c6a3b5585..0a7a404e16 100644 --- a/libraries/botbuilder-azure-queues/api-extractor.json +++ b/libraries/botbuilder-azure-queues/api-extractor.json @@ -1,375 +1,4 @@ -/** - * Config file for API Extractor. For more info, please visit: https://api-extractor.com - */ - { - "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", - - /** - * Optionally specifies another JSON config file that this file extends from. This provides a way for - * standard settings to be shared across multiple projects. - * - * If the path starts with "./" or "../", the path is resolved relative to the folder of the file that contains - * the "extends" field. Otherwise, the first path segment is interpreted as an NPM package name, and will be - * resolved using NodeJS require(). - * - * SUPPORTED TOKENS: none - * DEFAULT VALUE: "" - */ - // "extends": "./shared/api-extractor-base.json" - // "extends": "my-package/include/api-extractor-base.json" - - /** - * Determines the "" token that can be used with other config file settings. The project folder - * typically contains the tsconfig.json and package.json config files, but the path is user-defined. - * - * The path is resolved relative to the folder of the config file that contains the setting. - * - * The default value for "projectFolder" is the token "", which means the folder is determined by traversing - * parent folders, starting from the folder containing api-extractor.json, and stopping at the first folder - * that contains a tsconfig.json file. If a tsconfig.json file cannot be found in this way, then an error - * will be reported. - * - * SUPPORTED TOKENS: - * DEFAULT VALUE: "" - */ - // "projectFolder": "..", - - /** - * (REQUIRED) Specifies the .d.ts file to be used as the starting point for analysis. API Extractor - * analyzes the symbols exported by this module. - * - * The file extension must be ".d.ts" and not ".ts". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - */ - "mainEntryPointFilePath": "/lib/index.d.ts", - - /** - * A list of NPM package names whose exports should be treated as part of this package. - * - * For example, suppose that Webpack is used to generate a distributed bundle for the project "library1", - * and another NPM package "library2" is embedded in this bundle. Some types from library2 may become part - * of the exported API for library1, but by default API Extractor would generate a .d.ts rollup that explicitly - * imports library2. To avoid this, we can specify: - * - * "bundledPackages": [ "library2" ], - * - * This would direct API Extractor to embed those types directly in the .d.ts rollup, as if they had been - * local files for library1. - */ - "bundledPackages": [ ], - - /** - * Determines how the TypeScript compiler engine will be invoked by API Extractor. - */ - "compiler": { - /** - * Specifies the path to the tsconfig.json file to be used by API Extractor when analyzing the project. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * Note: This setting will be ignored if "overrideTsconfig" is used. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/tsconfig.json" - */ - // "tsconfigFilePath": "/tsconfig.json", - - /** - * Provides a compiler configuration that will be used instead of reading the tsconfig.json file from disk. - * The object must conform to the TypeScript tsconfig schema: - * - * http://json.schemastore.org/tsconfig - * - * If omitted, then the tsconfig.json file will be read from the "projectFolder". - * - * DEFAULT VALUE: no overrideTsconfig section - */ - // "overrideTsconfig": { - // . . . - // } - - /** - * This option causes the compiler to be invoked with the --skipLibCheck option. This option is not recommended - * and may cause API Extractor to produce incomplete or incorrect declarations, but it may be required when - * dependencies contain declarations that are incompatible with the TypeScript engine that API Extractor uses - * for its analysis. Where possible, the underlying issue should be fixed rather than relying on skipLibCheck. - * - * DEFAULT VALUE: false - */ - // "skipLibCheck": true, - }, - - /** - * Configures how the API report file (*.api.md) will be generated. - */ - "apiReport": { - /** - * (REQUIRED) Whether to generate an API report. - */ - "enabled": true, - - /** - * The filename for the API report files. It will be combined with "reportFolder" or "reportTempFolder" to produce - * a full file path. - * - * The file extension should be ".api.md", and the string should not contain a path separator such as "\" or "/". - * - * SUPPORTED TOKENS: , - * DEFAULT VALUE: ".api.md" - */ - // "reportFileName": ".api.md", - - /** - * Specifies the folder where the API report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * The API report file is normally tracked by Git. Changes to it can be used to trigger a branch policy, - * e.g. for an API review. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/etc/" - */ - // "reportFolder": "/etc/", - - /** - * Specifies the folder where the temporary report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * After the temporary file is written to disk, it is compared with the file in the "reportFolder". - * If they are different, a production build will fail. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/" - */ - // "reportTempFolder": "/temp/" - }, - - /** - * Configures how the doc model file (*.api.json) will be generated. - */ - "docModel": { - /** - * (REQUIRED) Whether to generate a doc model file. - */ - "enabled": true, - - /** - * The output path for the doc model file. The file extension should be ".api.json". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/.api.json" - */ - // "apiJsonFilePath": "/temp/.api.json" - }, - - /** - * Configures how the .d.ts rollup file will be generated. - */ - "dtsRollup": { - /** - * (REQUIRED) Whether to generate the .d.ts rollup file. - */ - "enabled": true, - - /** - * Specifies the output path for a .d.ts rollup file to be generated without any trimming. - * This file will include all declarations that are exported by the main entry point. - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/dist/.d.ts" - */ - // "untrimmedFilePath": "/dist/.d.ts", - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "beta" release. - * This file will include only declarations that are marked as "@public" or "@beta". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "betaTrimmedFilePath": "/dist/-beta.d.ts", - - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "public" release. - * This file will include only declarations that are marked as "@public". - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "publicTrimmedFilePath": "/dist/-public.d.ts", - - /** - * When a declaration is trimmed, by default it will be replaced by a code comment such as - * "Excluded from this release type: exampleMember". Set "omitTrimmingComments" to true to remove the - * declaration completely. - * - * DEFAULT VALUE: false - */ - // "omitTrimmingComments": true - }, - - /** - * Configures how the tsdoc-metadata.json file will be generated. - */ - "tsdocMetadata": { - /** - * Whether to generate the tsdoc-metadata.json file. - * - * DEFAULT VALUE: true - */ - // "enabled": true, - - /** - * Specifies where the TSDoc metadata file should be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * The default value is "", which causes the path to be automatically inferred from the "tsdocMetadata", - * "typings" or "main" fields of the project's package.json. If none of these fields are set, the lookup - * falls back to "tsdoc-metadata.json" in the package folder. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "tsdocMetadataFilePath": "/dist/tsdoc-metadata.json" - }, - - /** - * Specifies what type of newlines API Extractor should use when writing output files. By default, the output files - * will be written with Windows-style newlines. To use POSIX-style newlines, specify "lf" instead. - * To use the OS's default newline kind, specify "os". - * - * DEFAULT VALUE: "crlf" - */ - // "newlineKind": "crlf", - - /** - * Configures how API Extractor reports error and warning messages produced during analysis. - * - * There are three sources of messages: compiler messages, API Extractor messages, and TSDoc messages. - */ - "messages": { - /** - * Configures handling of diagnostic messages reported by the TypeScript compiler engine while analyzing - * the input .d.ts files. - * - * TypeScript message identifiers start with "TS" followed by an integer. For example: "TS2551" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "compilerMessageReporting": { - /** - * Configures the default routing for messages that don't match an explicit rule in this table. - */ - "default": { - /** - * Specifies whether the message should be written to the the tool's output log. Note that - * the "addToApiReportFile" property may supersede this option. - * - * Possible values: "error", "warning", "none" - * - * Errors cause the build to fail and return a nonzero exit code. Warnings cause a production build fail - * and return a nonzero exit code. For a non-production build (e.g. when "api-extractor run" includes - * the "--local" option), the warning is displayed but the build will not fail. - * - * DEFAULT VALUE: "warning" - */ - "logLevel": "warning", - - /** - * When addToApiReportFile is true: If API Extractor is configured to write an API report file (.api.md), - * then the message will be written inside that file; otherwise, the message is instead logged according to - * the "logLevel" option. - * - * DEFAULT VALUE: false - */ - // "addToApiReportFile": false - }, - - // "TS2551": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by API Extractor during its analysis. - * - * API Extractor message identifiers start with "ae-". For example: "ae-extra-release-tag" - * - * DEFAULT VALUE: See api-extractor-defaults.json for the complete table of extractorMessageReporting mappings - */ - "extractorMessageReporting": { - "default": { - "logLevel": "error", - // "addToApiReportFile": false - }, - - "ae-missing-release-tag": { - "logLevel": "none" - }, - - "ae-setter-with-docs": { - "logLevel": "warning", - "addToApiReportFile": true - }, - - "ae-missing-getter": { - "logLevel": "warning", - "addToApiReportFile": true - } - - // "ae-extra-release-tag": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by the TSDoc parser when analyzing code comments. - * - * TSDoc message identifiers start with "tsdoc-". For example: "tsdoc-link-tag-unescaped-text" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "tsdocMessageReporting": { - "default": { - "logLevel": "none" - // "addToApiReportFile": false - } - } - } -} +{ + "extends": "../../api-extractor.json", + "mainEntryPointFilePath": "./lib/index.d.ts" +} \ No newline at end of file diff --git a/libraries/botbuilder-azure/api-extractor.json b/libraries/botbuilder-azure/api-extractor.json index 1ab287e175..0a7a404e16 100644 --- a/libraries/botbuilder-azure/api-extractor.json +++ b/libraries/botbuilder-azure/api-extractor.json @@ -1,365 +1,4 @@ -/** - * Config file for API Extractor. For more info, please visit: https://api-extractor.com - */ { - "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", - - /** - * Optionally specifies another JSON config file that this file extends from. This provides a way for - * standard settings to be shared across multiple projects. - * - * If the path starts with "./" or "../", the path is resolved relative to the folder of the file that contains - * the "extends" field. Otherwise, the first path segment is interpreted as an NPM package name, and will be - * resolved using NodeJS require(). - * - * SUPPORTED TOKENS: none - * DEFAULT VALUE: "" - */ - // "extends": "./shared/api-extractor-base.json" - // "extends": "my-package/include/api-extractor-base.json" - - /** - * Determines the "" token that can be used with other config file settings. The project folder - * typically contains the tsconfig.json and package.json config files, but the path is user-defined. - * - * The path is resolved relative to the folder of the config file that contains the setting. - * - * The default value for "projectFolder" is the token "", which means the folder is determined by traversing - * parent folders, starting from the folder containing api-extractor.json, and stopping at the first folder - * that contains a tsconfig.json file. If a tsconfig.json file cannot be found in this way, then an error - * will be reported. - * - * SUPPORTED TOKENS: - * DEFAULT VALUE: "" - */ - // "projectFolder": "..", - - /** - * (REQUIRED) Specifies the .d.ts file to be used as the starting point for analysis. API Extractor - * analyzes the symbols exported by this module. - * - * The file extension must be ".d.ts" and not ".ts". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - */ - "mainEntryPointFilePath": "/lib/index.d.ts", - - /** - * A list of NPM package names whose exports should be treated as part of this package. - * - * For example, suppose that Webpack is used to generate a distributed bundle for the project "library1", - * and another NPM package "library2" is embedded in this bundle. Some types from library2 may become part - * of the exported API for library1, but by default API Extractor would generate a .d.ts rollup that explicitly - * imports library2. To avoid this, we can specify: - * - * "bundledPackages": [ "library2" ], - * - * This would direct API Extractor to embed those types directly in the .d.ts rollup, as if they had been - * local files for library1. - */ - "bundledPackages": [ ], - - /** - * Determines how the TypeScript compiler engine will be invoked by API Extractor. - */ - "compiler": { - /** - * Specifies the path to the tsconfig.json file to be used by API Extractor when analyzing the project. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * Note: This setting will be ignored if "overrideTsconfig" is used. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/tsconfig.json" - */ - // "tsconfigFilePath": "/tsconfig.json", - - /** - * Provides a compiler configuration that will be used instead of reading the tsconfig.json file from disk. - * The object must conform to the TypeScript tsconfig schema: - * - * http://json.schemastore.org/tsconfig - * - * If omitted, then the tsconfig.json file will be read from the "projectFolder". - * - * DEFAULT VALUE: no overrideTsconfig section - */ - // "overrideTsconfig": { - // . . . - // } - - /** - * This option causes the compiler to be invoked with the --skipLibCheck option. This option is not recommended - * and may cause API Extractor to produce incomplete or incorrect declarations, but it may be required when - * dependencies contain declarations that are incompatible with the TypeScript engine that API Extractor uses - * for its analysis. Where possible, the underlying issue should be fixed rather than relying on skipLibCheck. - * - * DEFAULT VALUE: false - */ - // "skipLibCheck": true, - }, - - /** - * Configures how the API report file (*.api.md) will be generated. - */ - "apiReport": { - /** - * (REQUIRED) Whether to generate an API report. - */ - "enabled": true, - - /** - * The filename for the API report files. It will be combined with "reportFolder" or "reportTempFolder" to produce - * a full file path. - * - * The file extension should be ".api.md", and the string should not contain a path separator such as "\" or "/". - * - * SUPPORTED TOKENS: , - * DEFAULT VALUE: ".api.md" - */ - // "reportFileName": ".api.md", - - /** - * Specifies the folder where the API report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * The API report file is normally tracked by Git. Changes to it can be used to trigger a branch policy, - * e.g. for an API review. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/etc/" - */ - // "reportFolder": "/etc/", - - /** - * Specifies the folder where the temporary report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * After the temporary file is written to disk, it is compared with the file in the "reportFolder". - * If they are different, a production build will fail. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/" - */ - // "reportTempFolder": "/temp/" - }, - - /** - * Configures how the doc model file (*.api.json) will be generated. - */ - "docModel": { - /** - * (REQUIRED) Whether to generate a doc model file. - */ - "enabled": true, - - /** - * The output path for the doc model file. The file extension should be ".api.json". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/.api.json" - */ - // "apiJsonFilePath": "/temp/.api.json" - }, - - /** - * Configures how the .d.ts rollup file will be generated. - */ - "dtsRollup": { - /** - * (REQUIRED) Whether to generate the .d.ts rollup file. - */ - "enabled": true, - - /** - * Specifies the output path for a .d.ts rollup file to be generated without any trimming. - * This file will include all declarations that are exported by the main entry point. - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/dist/.d.ts" - */ - // "untrimmedFilePath": "/dist/.d.ts", - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "beta" release. - * This file will include only declarations that are marked as "@public" or "@beta". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "betaTrimmedFilePath": "/dist/-beta.d.ts", - - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "public" release. - * This file will include only declarations that are marked as "@public". - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "publicTrimmedFilePath": "/dist/-public.d.ts", - - /** - * When a declaration is trimmed, by default it will be replaced by a code comment such as - * "Excluded from this release type: exampleMember". Set "omitTrimmingComments" to true to remove the - * declaration completely. - * - * DEFAULT VALUE: false - */ - // "omitTrimmingComments": true - }, - - /** - * Configures how the tsdoc-metadata.json file will be generated. - */ - "tsdocMetadata": { - /** - * Whether to generate the tsdoc-metadata.json file. - * - * DEFAULT VALUE: true - */ - // "enabled": true, - - /** - * Specifies where the TSDoc metadata file should be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * The default value is "", which causes the path to be automatically inferred from the "tsdocMetadata", - * "typings" or "main" fields of the project's package.json. If none of these fields are set, the lookup - * falls back to "tsdoc-metadata.json" in the package folder. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "tsdocMetadataFilePath": "/dist/tsdoc-metadata.json" - }, - - /** - * Specifies what type of newlines API Extractor should use when writing output files. By default, the output files - * will be written with Windows-style newlines. To use POSIX-style newlines, specify "lf" instead. - * To use the OS's default newline kind, specify "os". - * - * DEFAULT VALUE: "crlf" - */ - // "newlineKind": "crlf", - - /** - * Configures how API Extractor reports error and warning messages produced during analysis. - * - * There are three sources of messages: compiler messages, API Extractor messages, and TSDoc messages. - */ - "messages": { - /** - * Configures handling of diagnostic messages reported by the TypeScript compiler engine while analyzing - * the input .d.ts files. - * - * TypeScript message identifiers start with "TS" followed by an integer. For example: "TS2551" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "compilerMessageReporting": { - /** - * Configures the default routing for messages that don't match an explicit rule in this table. - */ - "default": { - /** - * Specifies whether the message should be written to the the tool's output log. Note that - * the "addToApiReportFile" property may supersede this option. - * - * Possible values: "error", "warning", "none" - * - * Errors cause the build to fail and return a nonzero exit code. Warnings cause a production build fail - * and return a nonzero exit code. For a non-production build (e.g. when "api-extractor run" includes - * the "--local" option), the warning is displayed but the build will not fail. - * - * DEFAULT VALUE: "warning" - */ - "logLevel": "warning", - - /** - * When addToApiReportFile is true: If API Extractor is configured to write an API report file (.api.md), - * then the message will be written inside that file; otherwise, the message is instead logged according to - * the "logLevel" option. - * - * DEFAULT VALUE: false - */ - // "addToApiReportFile": false - }, - - // "TS2551": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by API Extractor during its analysis. - * - * API Extractor message identifiers start with "ae-". For example: "ae-extra-release-tag" - * - * DEFAULT VALUE: See api-extractor-defaults.json for the complete table of extractorMessageReporting mappings - */ - "extractorMessageReporting": { - "default": { - "logLevel": "error", - // "addToApiReportFile": false - }, - - "ae-missing-release-tag": { - "logLevel": "none" - } - - // "ae-extra-release-tag": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by the TSDoc parser when analyzing code comments. - * - * TSDoc message identifiers start with "tsdoc-". For example: "tsdoc-link-tag-unescaped-text" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "tsdocMessageReporting": { - "default": { - "logLevel": "none" - // "addToApiReportFile": false - } - } - } -} + "extends": "../../api-extractor.json", + "mainEntryPointFilePath": "./lib/index.d.ts" +} \ No newline at end of file diff --git a/libraries/botbuilder-core/api-extractor.json b/libraries/botbuilder-core/api-extractor.json index 3c6a3b5585..0a7a404e16 100644 --- a/libraries/botbuilder-core/api-extractor.json +++ b/libraries/botbuilder-core/api-extractor.json @@ -1,375 +1,4 @@ -/** - * Config file for API Extractor. For more info, please visit: https://api-extractor.com - */ - { - "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", - - /** - * Optionally specifies another JSON config file that this file extends from. This provides a way for - * standard settings to be shared across multiple projects. - * - * If the path starts with "./" or "../", the path is resolved relative to the folder of the file that contains - * the "extends" field. Otherwise, the first path segment is interpreted as an NPM package name, and will be - * resolved using NodeJS require(). - * - * SUPPORTED TOKENS: none - * DEFAULT VALUE: "" - */ - // "extends": "./shared/api-extractor-base.json" - // "extends": "my-package/include/api-extractor-base.json" - - /** - * Determines the "" token that can be used with other config file settings. The project folder - * typically contains the tsconfig.json and package.json config files, but the path is user-defined. - * - * The path is resolved relative to the folder of the config file that contains the setting. - * - * The default value for "projectFolder" is the token "", which means the folder is determined by traversing - * parent folders, starting from the folder containing api-extractor.json, and stopping at the first folder - * that contains a tsconfig.json file. If a tsconfig.json file cannot be found in this way, then an error - * will be reported. - * - * SUPPORTED TOKENS: - * DEFAULT VALUE: "" - */ - // "projectFolder": "..", - - /** - * (REQUIRED) Specifies the .d.ts file to be used as the starting point for analysis. API Extractor - * analyzes the symbols exported by this module. - * - * The file extension must be ".d.ts" and not ".ts". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - */ - "mainEntryPointFilePath": "/lib/index.d.ts", - - /** - * A list of NPM package names whose exports should be treated as part of this package. - * - * For example, suppose that Webpack is used to generate a distributed bundle for the project "library1", - * and another NPM package "library2" is embedded in this bundle. Some types from library2 may become part - * of the exported API for library1, but by default API Extractor would generate a .d.ts rollup that explicitly - * imports library2. To avoid this, we can specify: - * - * "bundledPackages": [ "library2" ], - * - * This would direct API Extractor to embed those types directly in the .d.ts rollup, as if they had been - * local files for library1. - */ - "bundledPackages": [ ], - - /** - * Determines how the TypeScript compiler engine will be invoked by API Extractor. - */ - "compiler": { - /** - * Specifies the path to the tsconfig.json file to be used by API Extractor when analyzing the project. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * Note: This setting will be ignored if "overrideTsconfig" is used. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/tsconfig.json" - */ - // "tsconfigFilePath": "/tsconfig.json", - - /** - * Provides a compiler configuration that will be used instead of reading the tsconfig.json file from disk. - * The object must conform to the TypeScript tsconfig schema: - * - * http://json.schemastore.org/tsconfig - * - * If omitted, then the tsconfig.json file will be read from the "projectFolder". - * - * DEFAULT VALUE: no overrideTsconfig section - */ - // "overrideTsconfig": { - // . . . - // } - - /** - * This option causes the compiler to be invoked with the --skipLibCheck option. This option is not recommended - * and may cause API Extractor to produce incomplete or incorrect declarations, but it may be required when - * dependencies contain declarations that are incompatible with the TypeScript engine that API Extractor uses - * for its analysis. Where possible, the underlying issue should be fixed rather than relying on skipLibCheck. - * - * DEFAULT VALUE: false - */ - // "skipLibCheck": true, - }, - - /** - * Configures how the API report file (*.api.md) will be generated. - */ - "apiReport": { - /** - * (REQUIRED) Whether to generate an API report. - */ - "enabled": true, - - /** - * The filename for the API report files. It will be combined with "reportFolder" or "reportTempFolder" to produce - * a full file path. - * - * The file extension should be ".api.md", and the string should not contain a path separator such as "\" or "/". - * - * SUPPORTED TOKENS: , - * DEFAULT VALUE: ".api.md" - */ - // "reportFileName": ".api.md", - - /** - * Specifies the folder where the API report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * The API report file is normally tracked by Git. Changes to it can be used to trigger a branch policy, - * e.g. for an API review. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/etc/" - */ - // "reportFolder": "/etc/", - - /** - * Specifies the folder where the temporary report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * After the temporary file is written to disk, it is compared with the file in the "reportFolder". - * If they are different, a production build will fail. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/" - */ - // "reportTempFolder": "/temp/" - }, - - /** - * Configures how the doc model file (*.api.json) will be generated. - */ - "docModel": { - /** - * (REQUIRED) Whether to generate a doc model file. - */ - "enabled": true, - - /** - * The output path for the doc model file. The file extension should be ".api.json". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/.api.json" - */ - // "apiJsonFilePath": "/temp/.api.json" - }, - - /** - * Configures how the .d.ts rollup file will be generated. - */ - "dtsRollup": { - /** - * (REQUIRED) Whether to generate the .d.ts rollup file. - */ - "enabled": true, - - /** - * Specifies the output path for a .d.ts rollup file to be generated without any trimming. - * This file will include all declarations that are exported by the main entry point. - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/dist/.d.ts" - */ - // "untrimmedFilePath": "/dist/.d.ts", - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "beta" release. - * This file will include only declarations that are marked as "@public" or "@beta". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "betaTrimmedFilePath": "/dist/-beta.d.ts", - - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "public" release. - * This file will include only declarations that are marked as "@public". - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "publicTrimmedFilePath": "/dist/-public.d.ts", - - /** - * When a declaration is trimmed, by default it will be replaced by a code comment such as - * "Excluded from this release type: exampleMember". Set "omitTrimmingComments" to true to remove the - * declaration completely. - * - * DEFAULT VALUE: false - */ - // "omitTrimmingComments": true - }, - - /** - * Configures how the tsdoc-metadata.json file will be generated. - */ - "tsdocMetadata": { - /** - * Whether to generate the tsdoc-metadata.json file. - * - * DEFAULT VALUE: true - */ - // "enabled": true, - - /** - * Specifies where the TSDoc metadata file should be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * The default value is "", which causes the path to be automatically inferred from the "tsdocMetadata", - * "typings" or "main" fields of the project's package.json. If none of these fields are set, the lookup - * falls back to "tsdoc-metadata.json" in the package folder. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "tsdocMetadataFilePath": "/dist/tsdoc-metadata.json" - }, - - /** - * Specifies what type of newlines API Extractor should use when writing output files. By default, the output files - * will be written with Windows-style newlines. To use POSIX-style newlines, specify "lf" instead. - * To use the OS's default newline kind, specify "os". - * - * DEFAULT VALUE: "crlf" - */ - // "newlineKind": "crlf", - - /** - * Configures how API Extractor reports error and warning messages produced during analysis. - * - * There are three sources of messages: compiler messages, API Extractor messages, and TSDoc messages. - */ - "messages": { - /** - * Configures handling of diagnostic messages reported by the TypeScript compiler engine while analyzing - * the input .d.ts files. - * - * TypeScript message identifiers start with "TS" followed by an integer. For example: "TS2551" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "compilerMessageReporting": { - /** - * Configures the default routing for messages that don't match an explicit rule in this table. - */ - "default": { - /** - * Specifies whether the message should be written to the the tool's output log. Note that - * the "addToApiReportFile" property may supersede this option. - * - * Possible values: "error", "warning", "none" - * - * Errors cause the build to fail and return a nonzero exit code. Warnings cause a production build fail - * and return a nonzero exit code. For a non-production build (e.g. when "api-extractor run" includes - * the "--local" option), the warning is displayed but the build will not fail. - * - * DEFAULT VALUE: "warning" - */ - "logLevel": "warning", - - /** - * When addToApiReportFile is true: If API Extractor is configured to write an API report file (.api.md), - * then the message will be written inside that file; otherwise, the message is instead logged according to - * the "logLevel" option. - * - * DEFAULT VALUE: false - */ - // "addToApiReportFile": false - }, - - // "TS2551": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by API Extractor during its analysis. - * - * API Extractor message identifiers start with "ae-". For example: "ae-extra-release-tag" - * - * DEFAULT VALUE: See api-extractor-defaults.json for the complete table of extractorMessageReporting mappings - */ - "extractorMessageReporting": { - "default": { - "logLevel": "error", - // "addToApiReportFile": false - }, - - "ae-missing-release-tag": { - "logLevel": "none" - }, - - "ae-setter-with-docs": { - "logLevel": "warning", - "addToApiReportFile": true - }, - - "ae-missing-getter": { - "logLevel": "warning", - "addToApiReportFile": true - } - - // "ae-extra-release-tag": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by the TSDoc parser when analyzing code comments. - * - * TSDoc message identifiers start with "tsdoc-". For example: "tsdoc-link-tag-unescaped-text" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "tsdocMessageReporting": { - "default": { - "logLevel": "none" - // "addToApiReportFile": false - } - } - } -} +{ + "extends": "../../api-extractor.json", + "mainEntryPointFilePath": "./lib/index.d.ts" +} \ No newline at end of file diff --git a/libraries/botbuilder-dialogs-adaptive/api-extractor.json b/libraries/botbuilder-dialogs-adaptive/api-extractor.json index 5157fe0ea4..40b8479dfe 100644 --- a/libraries/botbuilder-dialogs-adaptive/api-extractor.json +++ b/libraries/botbuilder-dialogs-adaptive/api-extractor.json @@ -1,375 +1,4 @@ -/** - * Config file for API Extractor. For more info, please visit: https://api-extractor.com - */ - { - "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", - - /** - * Optionally specifies another JSON config file that this file extends from. This provides a way for - * standard settings to be shared across multiple projects. - * - * If the path starts with "./" or "../", the path is resolved relative to the folder of the file that contains - * the "extends" field. Otherwise, the first path segment is interpreted as an NPM package name, and will be - * resolved using NodeJS require(). - * - * SUPPORTED TOKENS: none - * DEFAULT VALUE: "" - */ - // "extends": "./shared/api-extractor-base.json" - // "extends": "my-package/include/api-extractor-base.json" - - /** - * Determines the "" token that can be used with other config file settings. The project folder - * typically contains the tsconfig.json and package.json config files, but the path is user-defined. - * - * The path is resolved relative to the folder of the config file that contains the setting. - * - * The default value for "projectFolder" is the token "", which means the folder is determined by traversing - * parent folders, starting from the folder containing api-extractor.json, and stopping at the first folder - * that contains a tsconfig.json file. If a tsconfig.json file cannot be found in this way, then an error - * will be reported. - * - * SUPPORTED TOKENS: - * DEFAULT VALUE: "" - */ - // "projectFolder": "..", - - /** - * (REQUIRED) Specifies the .d.ts file to be used as the starting point for analysis. API Extractor - * analyzes the symbols exported by this module. - * - * The file extension must be ".d.ts" and not ".ts". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - */ - "mainEntryPointFilePath": "/lib/index.d.ts", - - /** - * A list of NPM package names whose exports should be treated as part of this package. - * - * For example, suppose that Webpack is used to generate a distributed bundle for the project "library1", - * and another NPM package "library2" is embedded in this bundle. Some types from library2 may become part - * of the exported API for library1, but by default API Extractor would generate a .d.ts rollup that explicitly - * imports library2. To avoid this, we can specify: - * - * "bundledPackages": [ "library2" ], - * - * This would direct API Extractor to embed those types directly in the .d.ts rollup, as if they had been - * local files for library1. - */ - "bundledPackages": [ ], - - /** - * Determines how the TypeScript compiler engine will be invoked by API Extractor. - */ - "compiler": { - /** - * Specifies the path to the tsconfig.json file to be used by API Extractor when analyzing the project. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * Note: This setting will be ignored if "overrideTsconfig" is used. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/tsconfig.json" - */ - // "tsconfigFilePath": "/tsconfig.json", - - /** - * Provides a compiler configuration that will be used instead of reading the tsconfig.json file from disk. - * The object must conform to the TypeScript tsconfig schema: - * - * http://json.schemastore.org/tsconfig - * - * If omitted, then the tsconfig.json file will be read from the "projectFolder". - * - * DEFAULT VALUE: no overrideTsconfig section - */ - // "overrideTsconfig": { - // . . . - // } - - /** - * This option causes the compiler to be invoked with the --skipLibCheck option. This option is not recommended - * and may cause API Extractor to produce incomplete or incorrect declarations, but it may be required when - * dependencies contain declarations that are incompatible with the TypeScript engine that API Extractor uses - * for its analysis. Where possible, the underlying issue should be fixed rather than relying on skipLibCheck. - * - * DEFAULT VALUE: false - */ - // "skipLibCheck": true, - }, - - /** - * Configures how the API report file (*.api.md) will be generated. - */ - "apiReport": { - /** - * (REQUIRED) Whether to generate an API report. - */ - "enabled": true, - - /** - * The filename for the API report files. It will be combined with "reportFolder" or "reportTempFolder" to produce - * a full file path. - * - * The file extension should be ".api.md", and the string should not contain a path separator such as "\" or "/". - * - * SUPPORTED TOKENS: , - * DEFAULT VALUE: ".api.md" - */ - // "reportFileName": ".api.md", - - /** - * Specifies the folder where the API report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * The API report file is normally tracked by Git. Changes to it can be used to trigger a branch policy, - * e.g. for an API review. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/etc/" - */ - // "reportFolder": "/etc/", - - /** - * Specifies the folder where the temporary report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * After the temporary file is written to disk, it is compared with the file in the "reportFolder". - * If they are different, a production build will fail. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/" - */ - // "reportTempFolder": "/temp/" - }, - - /** - * Configures how the doc model file (*.api.json) will be generated. - */ - "docModel": { - /** - * (REQUIRED) Whether to generate a doc model file. - */ - "enabled": true, - - /** - * The output path for the doc model file. The file extension should be ".api.json". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/.api.json" - */ - // "apiJsonFilePath": "/temp/.api.json" - }, - - /** - * Configures how the .d.ts rollup file will be generated. - */ - "dtsRollup": { - /** - * (REQUIRED) Whether to generate the .d.ts rollup file. - */ - "enabled": true, - - /** - * Specifies the output path for a .d.ts rollup file to be generated without any trimming. - * This file will include all declarations that are exported by the main entry point. - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/dist/.d.ts" - */ - // "untrimmedFilePath": "/dist/.d.ts", - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "beta" release. - * This file will include only declarations that are marked as "@public" or "@beta". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "betaTrimmedFilePath": "/dist/-beta.d.ts", - - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "public" release. - * This file will include only declarations that are marked as "@public". - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "publicTrimmedFilePath": "/dist/-public.d.ts", - - /** - * When a declaration is trimmed, by default it will be replaced by a code comment such as - * "Excluded from this release type: exampleMember". Set "omitTrimmingComments" to true to remove the - * declaration completely. - * - * DEFAULT VALUE: false - */ - // "omitTrimmingComments": true - }, - - /** - * Configures how the tsdoc-metadata.json file will be generated. - */ - "tsdocMetadata": { - /** - * Whether to generate the tsdoc-metadata.json file. - * - * DEFAULT VALUE: true - */ - // "enabled": true, - - /** - * Specifies where the TSDoc metadata file should be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * The default value is "", which causes the path to be automatically inferred from the "tsdocMetadata", - * "typings" or "main" fields of the project's package.json. If none of these fields are set, the lookup - * falls back to "tsdoc-metadata.json" in the package folder. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "tsdocMetadataFilePath": "/dist/tsdoc-metadata.json" - }, - - /** - * Specifies what type of newlines API Extractor should use when writing output files. By default, the output files - * will be written with Windows-style newlines. To use POSIX-style newlines, specify "lf" instead. - * To use the OS's default newline kind, specify "os". - * - * DEFAULT VALUE: "crlf" - */ - // "newlineKind": "crlf", - - /** - * Configures how API Extractor reports error and warning messages produced during analysis. - * - * There are three sources of messages: compiler messages, API Extractor messages, and TSDoc messages. - */ - "messages": { - /** - * Configures handling of diagnostic messages reported by the TypeScript compiler engine while analyzing - * the input .d.ts files. - * - * TypeScript message identifiers start with "TS" followed by an integer. For example: "TS2551" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "compilerMessageReporting": { - /** - * Configures the default routing for messages that don't match an explicit rule in this table. - */ - "default": { - /** - * Specifies whether the message should be written to the the tool's output log. Note that - * the "addToApiReportFile" property may supersede this option. - * - * Possible values: "error", "warning", "none" - * - * Errors cause the build to fail and return a nonzero exit code. Warnings cause a production build fail - * and return a nonzero exit code. For a non-production build (e.g. when "api-extractor run" includes - * the "--local" option), the warning is displayed but the build will not fail. - * - * DEFAULT VALUE: "warning" - */ - "logLevel": "warning", - - /** - * When addToApiReportFile is true: If API Extractor is configured to write an API report file (.api.md), - * then the message will be written inside that file; otherwise, the message is instead logged according to - * the "logLevel" option. - * - * DEFAULT VALUE: false - */ - // "addToApiReportFile": false - }, - - // "TS2551": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by API Extractor during its analysis. - * - * API Extractor message identifiers start with "ae-". For example: "ae-extra-release-tag" - * - * DEFAULT VALUE: See api-extractor-defaults.json for the complete table of extractorMessageReporting mappings - */ - "extractorMessageReporting": { - "default": { - "logLevel": "error", - // "addToApiReportFile": false - }, - - "ae-missing-release-tag": { - "logLevel": "none" - }, - - "ae-setter-with-docs": { - "logLevel": "warning", - "addToApiReportFile": true - }, - - "ae-missing-getter": { - "logLevel": "warning", - "addToApiReportFile": true - } - - // "ae-extra-release-tag": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by the TSDoc parser when analyzing code comments. - * - * TSDoc message identifiers start with "tsdoc-". For example: "tsdoc-link-tag-unescaped-text" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "tsdocMessageReporting": { - "default": { - "logLevel": "none" - // "addToApiReportFile": false - } - } - } -} +{ + "extends": "../../api-extractor.json", + "mainEntryPointFilePath": "./lib/index.d.ts" +} \ No newline at end of file diff --git a/libraries/botbuilder-dialogs-declarative/api-extractor.json b/libraries/botbuilder-dialogs-declarative/api-extractor.json index 5157fe0ea4..40b8479dfe 100644 --- a/libraries/botbuilder-dialogs-declarative/api-extractor.json +++ b/libraries/botbuilder-dialogs-declarative/api-extractor.json @@ -1,375 +1,4 @@ -/** - * Config file for API Extractor. For more info, please visit: https://api-extractor.com - */ - { - "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", - - /** - * Optionally specifies another JSON config file that this file extends from. This provides a way for - * standard settings to be shared across multiple projects. - * - * If the path starts with "./" or "../", the path is resolved relative to the folder of the file that contains - * the "extends" field. Otherwise, the first path segment is interpreted as an NPM package name, and will be - * resolved using NodeJS require(). - * - * SUPPORTED TOKENS: none - * DEFAULT VALUE: "" - */ - // "extends": "./shared/api-extractor-base.json" - // "extends": "my-package/include/api-extractor-base.json" - - /** - * Determines the "" token that can be used with other config file settings. The project folder - * typically contains the tsconfig.json and package.json config files, but the path is user-defined. - * - * The path is resolved relative to the folder of the config file that contains the setting. - * - * The default value for "projectFolder" is the token "", which means the folder is determined by traversing - * parent folders, starting from the folder containing api-extractor.json, and stopping at the first folder - * that contains a tsconfig.json file. If a tsconfig.json file cannot be found in this way, then an error - * will be reported. - * - * SUPPORTED TOKENS: - * DEFAULT VALUE: "" - */ - // "projectFolder": "..", - - /** - * (REQUIRED) Specifies the .d.ts file to be used as the starting point for analysis. API Extractor - * analyzes the symbols exported by this module. - * - * The file extension must be ".d.ts" and not ".ts". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - */ - "mainEntryPointFilePath": "/lib/index.d.ts", - - /** - * A list of NPM package names whose exports should be treated as part of this package. - * - * For example, suppose that Webpack is used to generate a distributed bundle for the project "library1", - * and another NPM package "library2" is embedded in this bundle. Some types from library2 may become part - * of the exported API for library1, but by default API Extractor would generate a .d.ts rollup that explicitly - * imports library2. To avoid this, we can specify: - * - * "bundledPackages": [ "library2" ], - * - * This would direct API Extractor to embed those types directly in the .d.ts rollup, as if they had been - * local files for library1. - */ - "bundledPackages": [ ], - - /** - * Determines how the TypeScript compiler engine will be invoked by API Extractor. - */ - "compiler": { - /** - * Specifies the path to the tsconfig.json file to be used by API Extractor when analyzing the project. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * Note: This setting will be ignored if "overrideTsconfig" is used. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/tsconfig.json" - */ - // "tsconfigFilePath": "/tsconfig.json", - - /** - * Provides a compiler configuration that will be used instead of reading the tsconfig.json file from disk. - * The object must conform to the TypeScript tsconfig schema: - * - * http://json.schemastore.org/tsconfig - * - * If omitted, then the tsconfig.json file will be read from the "projectFolder". - * - * DEFAULT VALUE: no overrideTsconfig section - */ - // "overrideTsconfig": { - // . . . - // } - - /** - * This option causes the compiler to be invoked with the --skipLibCheck option. This option is not recommended - * and may cause API Extractor to produce incomplete or incorrect declarations, but it may be required when - * dependencies contain declarations that are incompatible with the TypeScript engine that API Extractor uses - * for its analysis. Where possible, the underlying issue should be fixed rather than relying on skipLibCheck. - * - * DEFAULT VALUE: false - */ - // "skipLibCheck": true, - }, - - /** - * Configures how the API report file (*.api.md) will be generated. - */ - "apiReport": { - /** - * (REQUIRED) Whether to generate an API report. - */ - "enabled": true, - - /** - * The filename for the API report files. It will be combined with "reportFolder" or "reportTempFolder" to produce - * a full file path. - * - * The file extension should be ".api.md", and the string should not contain a path separator such as "\" or "/". - * - * SUPPORTED TOKENS: , - * DEFAULT VALUE: ".api.md" - */ - // "reportFileName": ".api.md", - - /** - * Specifies the folder where the API report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * The API report file is normally tracked by Git. Changes to it can be used to trigger a branch policy, - * e.g. for an API review. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/etc/" - */ - // "reportFolder": "/etc/", - - /** - * Specifies the folder where the temporary report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * After the temporary file is written to disk, it is compared with the file in the "reportFolder". - * If they are different, a production build will fail. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/" - */ - // "reportTempFolder": "/temp/" - }, - - /** - * Configures how the doc model file (*.api.json) will be generated. - */ - "docModel": { - /** - * (REQUIRED) Whether to generate a doc model file. - */ - "enabled": true, - - /** - * The output path for the doc model file. The file extension should be ".api.json". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/.api.json" - */ - // "apiJsonFilePath": "/temp/.api.json" - }, - - /** - * Configures how the .d.ts rollup file will be generated. - */ - "dtsRollup": { - /** - * (REQUIRED) Whether to generate the .d.ts rollup file. - */ - "enabled": true, - - /** - * Specifies the output path for a .d.ts rollup file to be generated without any trimming. - * This file will include all declarations that are exported by the main entry point. - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/dist/.d.ts" - */ - // "untrimmedFilePath": "/dist/.d.ts", - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "beta" release. - * This file will include only declarations that are marked as "@public" or "@beta". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "betaTrimmedFilePath": "/dist/-beta.d.ts", - - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "public" release. - * This file will include only declarations that are marked as "@public". - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "publicTrimmedFilePath": "/dist/-public.d.ts", - - /** - * When a declaration is trimmed, by default it will be replaced by a code comment such as - * "Excluded from this release type: exampleMember". Set "omitTrimmingComments" to true to remove the - * declaration completely. - * - * DEFAULT VALUE: false - */ - // "omitTrimmingComments": true - }, - - /** - * Configures how the tsdoc-metadata.json file will be generated. - */ - "tsdocMetadata": { - /** - * Whether to generate the tsdoc-metadata.json file. - * - * DEFAULT VALUE: true - */ - // "enabled": true, - - /** - * Specifies where the TSDoc metadata file should be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * The default value is "", which causes the path to be automatically inferred from the "tsdocMetadata", - * "typings" or "main" fields of the project's package.json. If none of these fields are set, the lookup - * falls back to "tsdoc-metadata.json" in the package folder. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "tsdocMetadataFilePath": "/dist/tsdoc-metadata.json" - }, - - /** - * Specifies what type of newlines API Extractor should use when writing output files. By default, the output files - * will be written with Windows-style newlines. To use POSIX-style newlines, specify "lf" instead. - * To use the OS's default newline kind, specify "os". - * - * DEFAULT VALUE: "crlf" - */ - // "newlineKind": "crlf", - - /** - * Configures how API Extractor reports error and warning messages produced during analysis. - * - * There are three sources of messages: compiler messages, API Extractor messages, and TSDoc messages. - */ - "messages": { - /** - * Configures handling of diagnostic messages reported by the TypeScript compiler engine while analyzing - * the input .d.ts files. - * - * TypeScript message identifiers start with "TS" followed by an integer. For example: "TS2551" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "compilerMessageReporting": { - /** - * Configures the default routing for messages that don't match an explicit rule in this table. - */ - "default": { - /** - * Specifies whether the message should be written to the the tool's output log. Note that - * the "addToApiReportFile" property may supersede this option. - * - * Possible values: "error", "warning", "none" - * - * Errors cause the build to fail and return a nonzero exit code. Warnings cause a production build fail - * and return a nonzero exit code. For a non-production build (e.g. when "api-extractor run" includes - * the "--local" option), the warning is displayed but the build will not fail. - * - * DEFAULT VALUE: "warning" - */ - "logLevel": "warning", - - /** - * When addToApiReportFile is true: If API Extractor is configured to write an API report file (.api.md), - * then the message will be written inside that file; otherwise, the message is instead logged according to - * the "logLevel" option. - * - * DEFAULT VALUE: false - */ - // "addToApiReportFile": false - }, - - // "TS2551": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by API Extractor during its analysis. - * - * API Extractor message identifiers start with "ae-". For example: "ae-extra-release-tag" - * - * DEFAULT VALUE: See api-extractor-defaults.json for the complete table of extractorMessageReporting mappings - */ - "extractorMessageReporting": { - "default": { - "logLevel": "error", - // "addToApiReportFile": false - }, - - "ae-missing-release-tag": { - "logLevel": "none" - }, - - "ae-setter-with-docs": { - "logLevel": "warning", - "addToApiReportFile": true - }, - - "ae-missing-getter": { - "logLevel": "warning", - "addToApiReportFile": true - } - - // "ae-extra-release-tag": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by the TSDoc parser when analyzing code comments. - * - * TSDoc message identifiers start with "tsdoc-". For example: "tsdoc-link-tag-unescaped-text" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "tsdocMessageReporting": { - "default": { - "logLevel": "none" - // "addToApiReportFile": false - } - } - } -} +{ + "extends": "../../api-extractor.json", + "mainEntryPointFilePath": "./lib/index.d.ts" +} \ No newline at end of file diff --git a/libraries/botbuilder-dialogs/api-extractor.json b/libraries/botbuilder-dialogs/api-extractor.json index 3c6a3b5585..0a7a404e16 100644 --- a/libraries/botbuilder-dialogs/api-extractor.json +++ b/libraries/botbuilder-dialogs/api-extractor.json @@ -1,375 +1,4 @@ -/** - * Config file for API Extractor. For more info, please visit: https://api-extractor.com - */ - { - "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", - - /** - * Optionally specifies another JSON config file that this file extends from. This provides a way for - * standard settings to be shared across multiple projects. - * - * If the path starts with "./" or "../", the path is resolved relative to the folder of the file that contains - * the "extends" field. Otherwise, the first path segment is interpreted as an NPM package name, and will be - * resolved using NodeJS require(). - * - * SUPPORTED TOKENS: none - * DEFAULT VALUE: "" - */ - // "extends": "./shared/api-extractor-base.json" - // "extends": "my-package/include/api-extractor-base.json" - - /** - * Determines the "" token that can be used with other config file settings. The project folder - * typically contains the tsconfig.json and package.json config files, but the path is user-defined. - * - * The path is resolved relative to the folder of the config file that contains the setting. - * - * The default value for "projectFolder" is the token "", which means the folder is determined by traversing - * parent folders, starting from the folder containing api-extractor.json, and stopping at the first folder - * that contains a tsconfig.json file. If a tsconfig.json file cannot be found in this way, then an error - * will be reported. - * - * SUPPORTED TOKENS: - * DEFAULT VALUE: "" - */ - // "projectFolder": "..", - - /** - * (REQUIRED) Specifies the .d.ts file to be used as the starting point for analysis. API Extractor - * analyzes the symbols exported by this module. - * - * The file extension must be ".d.ts" and not ".ts". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - */ - "mainEntryPointFilePath": "/lib/index.d.ts", - - /** - * A list of NPM package names whose exports should be treated as part of this package. - * - * For example, suppose that Webpack is used to generate a distributed bundle for the project "library1", - * and another NPM package "library2" is embedded in this bundle. Some types from library2 may become part - * of the exported API for library1, but by default API Extractor would generate a .d.ts rollup that explicitly - * imports library2. To avoid this, we can specify: - * - * "bundledPackages": [ "library2" ], - * - * This would direct API Extractor to embed those types directly in the .d.ts rollup, as if they had been - * local files for library1. - */ - "bundledPackages": [ ], - - /** - * Determines how the TypeScript compiler engine will be invoked by API Extractor. - */ - "compiler": { - /** - * Specifies the path to the tsconfig.json file to be used by API Extractor when analyzing the project. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * Note: This setting will be ignored if "overrideTsconfig" is used. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/tsconfig.json" - */ - // "tsconfigFilePath": "/tsconfig.json", - - /** - * Provides a compiler configuration that will be used instead of reading the tsconfig.json file from disk. - * The object must conform to the TypeScript tsconfig schema: - * - * http://json.schemastore.org/tsconfig - * - * If omitted, then the tsconfig.json file will be read from the "projectFolder". - * - * DEFAULT VALUE: no overrideTsconfig section - */ - // "overrideTsconfig": { - // . . . - // } - - /** - * This option causes the compiler to be invoked with the --skipLibCheck option. This option is not recommended - * and may cause API Extractor to produce incomplete or incorrect declarations, but it may be required when - * dependencies contain declarations that are incompatible with the TypeScript engine that API Extractor uses - * for its analysis. Where possible, the underlying issue should be fixed rather than relying on skipLibCheck. - * - * DEFAULT VALUE: false - */ - // "skipLibCheck": true, - }, - - /** - * Configures how the API report file (*.api.md) will be generated. - */ - "apiReport": { - /** - * (REQUIRED) Whether to generate an API report. - */ - "enabled": true, - - /** - * The filename for the API report files. It will be combined with "reportFolder" or "reportTempFolder" to produce - * a full file path. - * - * The file extension should be ".api.md", and the string should not contain a path separator such as "\" or "/". - * - * SUPPORTED TOKENS: , - * DEFAULT VALUE: ".api.md" - */ - // "reportFileName": ".api.md", - - /** - * Specifies the folder where the API report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * The API report file is normally tracked by Git. Changes to it can be used to trigger a branch policy, - * e.g. for an API review. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/etc/" - */ - // "reportFolder": "/etc/", - - /** - * Specifies the folder where the temporary report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * After the temporary file is written to disk, it is compared with the file in the "reportFolder". - * If they are different, a production build will fail. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/" - */ - // "reportTempFolder": "/temp/" - }, - - /** - * Configures how the doc model file (*.api.json) will be generated. - */ - "docModel": { - /** - * (REQUIRED) Whether to generate a doc model file. - */ - "enabled": true, - - /** - * The output path for the doc model file. The file extension should be ".api.json". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/.api.json" - */ - // "apiJsonFilePath": "/temp/.api.json" - }, - - /** - * Configures how the .d.ts rollup file will be generated. - */ - "dtsRollup": { - /** - * (REQUIRED) Whether to generate the .d.ts rollup file. - */ - "enabled": true, - - /** - * Specifies the output path for a .d.ts rollup file to be generated without any trimming. - * This file will include all declarations that are exported by the main entry point. - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/dist/.d.ts" - */ - // "untrimmedFilePath": "/dist/.d.ts", - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "beta" release. - * This file will include only declarations that are marked as "@public" or "@beta". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "betaTrimmedFilePath": "/dist/-beta.d.ts", - - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "public" release. - * This file will include only declarations that are marked as "@public". - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "publicTrimmedFilePath": "/dist/-public.d.ts", - - /** - * When a declaration is trimmed, by default it will be replaced by a code comment such as - * "Excluded from this release type: exampleMember". Set "omitTrimmingComments" to true to remove the - * declaration completely. - * - * DEFAULT VALUE: false - */ - // "omitTrimmingComments": true - }, - - /** - * Configures how the tsdoc-metadata.json file will be generated. - */ - "tsdocMetadata": { - /** - * Whether to generate the tsdoc-metadata.json file. - * - * DEFAULT VALUE: true - */ - // "enabled": true, - - /** - * Specifies where the TSDoc metadata file should be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * The default value is "", which causes the path to be automatically inferred from the "tsdocMetadata", - * "typings" or "main" fields of the project's package.json. If none of these fields are set, the lookup - * falls back to "tsdoc-metadata.json" in the package folder. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "tsdocMetadataFilePath": "/dist/tsdoc-metadata.json" - }, - - /** - * Specifies what type of newlines API Extractor should use when writing output files. By default, the output files - * will be written with Windows-style newlines. To use POSIX-style newlines, specify "lf" instead. - * To use the OS's default newline kind, specify "os". - * - * DEFAULT VALUE: "crlf" - */ - // "newlineKind": "crlf", - - /** - * Configures how API Extractor reports error and warning messages produced during analysis. - * - * There are three sources of messages: compiler messages, API Extractor messages, and TSDoc messages. - */ - "messages": { - /** - * Configures handling of diagnostic messages reported by the TypeScript compiler engine while analyzing - * the input .d.ts files. - * - * TypeScript message identifiers start with "TS" followed by an integer. For example: "TS2551" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "compilerMessageReporting": { - /** - * Configures the default routing for messages that don't match an explicit rule in this table. - */ - "default": { - /** - * Specifies whether the message should be written to the the tool's output log. Note that - * the "addToApiReportFile" property may supersede this option. - * - * Possible values: "error", "warning", "none" - * - * Errors cause the build to fail and return a nonzero exit code. Warnings cause a production build fail - * and return a nonzero exit code. For a non-production build (e.g. when "api-extractor run" includes - * the "--local" option), the warning is displayed but the build will not fail. - * - * DEFAULT VALUE: "warning" - */ - "logLevel": "warning", - - /** - * When addToApiReportFile is true: If API Extractor is configured to write an API report file (.api.md), - * then the message will be written inside that file; otherwise, the message is instead logged according to - * the "logLevel" option. - * - * DEFAULT VALUE: false - */ - // "addToApiReportFile": false - }, - - // "TS2551": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by API Extractor during its analysis. - * - * API Extractor message identifiers start with "ae-". For example: "ae-extra-release-tag" - * - * DEFAULT VALUE: See api-extractor-defaults.json for the complete table of extractorMessageReporting mappings - */ - "extractorMessageReporting": { - "default": { - "logLevel": "error", - // "addToApiReportFile": false - }, - - "ae-missing-release-tag": { - "logLevel": "none" - }, - - "ae-setter-with-docs": { - "logLevel": "warning", - "addToApiReportFile": true - }, - - "ae-missing-getter": { - "logLevel": "warning", - "addToApiReportFile": true - } - - // "ae-extra-release-tag": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by the TSDoc parser when analyzing code comments. - * - * TSDoc message identifiers start with "tsdoc-". For example: "tsdoc-link-tag-unescaped-text" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "tsdocMessageReporting": { - "default": { - "logLevel": "none" - // "addToApiReportFile": false - } - } - } -} +{ + "extends": "../../api-extractor.json", + "mainEntryPointFilePath": "./lib/index.d.ts" +} \ No newline at end of file diff --git a/libraries/botbuilder-testing/api-extractor.json b/libraries/botbuilder-testing/api-extractor.json index 3c6a3b5585..0a7a404e16 100644 --- a/libraries/botbuilder-testing/api-extractor.json +++ b/libraries/botbuilder-testing/api-extractor.json @@ -1,375 +1,4 @@ -/** - * Config file for API Extractor. For more info, please visit: https://api-extractor.com - */ - { - "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", - - /** - * Optionally specifies another JSON config file that this file extends from. This provides a way for - * standard settings to be shared across multiple projects. - * - * If the path starts with "./" or "../", the path is resolved relative to the folder of the file that contains - * the "extends" field. Otherwise, the first path segment is interpreted as an NPM package name, and will be - * resolved using NodeJS require(). - * - * SUPPORTED TOKENS: none - * DEFAULT VALUE: "" - */ - // "extends": "./shared/api-extractor-base.json" - // "extends": "my-package/include/api-extractor-base.json" - - /** - * Determines the "" token that can be used with other config file settings. The project folder - * typically contains the tsconfig.json and package.json config files, but the path is user-defined. - * - * The path is resolved relative to the folder of the config file that contains the setting. - * - * The default value for "projectFolder" is the token "", which means the folder is determined by traversing - * parent folders, starting from the folder containing api-extractor.json, and stopping at the first folder - * that contains a tsconfig.json file. If a tsconfig.json file cannot be found in this way, then an error - * will be reported. - * - * SUPPORTED TOKENS: - * DEFAULT VALUE: "" - */ - // "projectFolder": "..", - - /** - * (REQUIRED) Specifies the .d.ts file to be used as the starting point for analysis. API Extractor - * analyzes the symbols exported by this module. - * - * The file extension must be ".d.ts" and not ".ts". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - */ - "mainEntryPointFilePath": "/lib/index.d.ts", - - /** - * A list of NPM package names whose exports should be treated as part of this package. - * - * For example, suppose that Webpack is used to generate a distributed bundle for the project "library1", - * and another NPM package "library2" is embedded in this bundle. Some types from library2 may become part - * of the exported API for library1, but by default API Extractor would generate a .d.ts rollup that explicitly - * imports library2. To avoid this, we can specify: - * - * "bundledPackages": [ "library2" ], - * - * This would direct API Extractor to embed those types directly in the .d.ts rollup, as if they had been - * local files for library1. - */ - "bundledPackages": [ ], - - /** - * Determines how the TypeScript compiler engine will be invoked by API Extractor. - */ - "compiler": { - /** - * Specifies the path to the tsconfig.json file to be used by API Extractor when analyzing the project. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * Note: This setting will be ignored if "overrideTsconfig" is used. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/tsconfig.json" - */ - // "tsconfigFilePath": "/tsconfig.json", - - /** - * Provides a compiler configuration that will be used instead of reading the tsconfig.json file from disk. - * The object must conform to the TypeScript tsconfig schema: - * - * http://json.schemastore.org/tsconfig - * - * If omitted, then the tsconfig.json file will be read from the "projectFolder". - * - * DEFAULT VALUE: no overrideTsconfig section - */ - // "overrideTsconfig": { - // . . . - // } - - /** - * This option causes the compiler to be invoked with the --skipLibCheck option. This option is not recommended - * and may cause API Extractor to produce incomplete or incorrect declarations, but it may be required when - * dependencies contain declarations that are incompatible with the TypeScript engine that API Extractor uses - * for its analysis. Where possible, the underlying issue should be fixed rather than relying on skipLibCheck. - * - * DEFAULT VALUE: false - */ - // "skipLibCheck": true, - }, - - /** - * Configures how the API report file (*.api.md) will be generated. - */ - "apiReport": { - /** - * (REQUIRED) Whether to generate an API report. - */ - "enabled": true, - - /** - * The filename for the API report files. It will be combined with "reportFolder" or "reportTempFolder" to produce - * a full file path. - * - * The file extension should be ".api.md", and the string should not contain a path separator such as "\" or "/". - * - * SUPPORTED TOKENS: , - * DEFAULT VALUE: ".api.md" - */ - // "reportFileName": ".api.md", - - /** - * Specifies the folder where the API report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * The API report file is normally tracked by Git. Changes to it can be used to trigger a branch policy, - * e.g. for an API review. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/etc/" - */ - // "reportFolder": "/etc/", - - /** - * Specifies the folder where the temporary report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * After the temporary file is written to disk, it is compared with the file in the "reportFolder". - * If they are different, a production build will fail. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/" - */ - // "reportTempFolder": "/temp/" - }, - - /** - * Configures how the doc model file (*.api.json) will be generated. - */ - "docModel": { - /** - * (REQUIRED) Whether to generate a doc model file. - */ - "enabled": true, - - /** - * The output path for the doc model file. The file extension should be ".api.json". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/.api.json" - */ - // "apiJsonFilePath": "/temp/.api.json" - }, - - /** - * Configures how the .d.ts rollup file will be generated. - */ - "dtsRollup": { - /** - * (REQUIRED) Whether to generate the .d.ts rollup file. - */ - "enabled": true, - - /** - * Specifies the output path for a .d.ts rollup file to be generated without any trimming. - * This file will include all declarations that are exported by the main entry point. - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/dist/.d.ts" - */ - // "untrimmedFilePath": "/dist/.d.ts", - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "beta" release. - * This file will include only declarations that are marked as "@public" or "@beta". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "betaTrimmedFilePath": "/dist/-beta.d.ts", - - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "public" release. - * This file will include only declarations that are marked as "@public". - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "publicTrimmedFilePath": "/dist/-public.d.ts", - - /** - * When a declaration is trimmed, by default it will be replaced by a code comment such as - * "Excluded from this release type: exampleMember". Set "omitTrimmingComments" to true to remove the - * declaration completely. - * - * DEFAULT VALUE: false - */ - // "omitTrimmingComments": true - }, - - /** - * Configures how the tsdoc-metadata.json file will be generated. - */ - "tsdocMetadata": { - /** - * Whether to generate the tsdoc-metadata.json file. - * - * DEFAULT VALUE: true - */ - // "enabled": true, - - /** - * Specifies where the TSDoc metadata file should be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * The default value is "", which causes the path to be automatically inferred from the "tsdocMetadata", - * "typings" or "main" fields of the project's package.json. If none of these fields are set, the lookup - * falls back to "tsdoc-metadata.json" in the package folder. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "tsdocMetadataFilePath": "/dist/tsdoc-metadata.json" - }, - - /** - * Specifies what type of newlines API Extractor should use when writing output files. By default, the output files - * will be written with Windows-style newlines. To use POSIX-style newlines, specify "lf" instead. - * To use the OS's default newline kind, specify "os". - * - * DEFAULT VALUE: "crlf" - */ - // "newlineKind": "crlf", - - /** - * Configures how API Extractor reports error and warning messages produced during analysis. - * - * There are three sources of messages: compiler messages, API Extractor messages, and TSDoc messages. - */ - "messages": { - /** - * Configures handling of diagnostic messages reported by the TypeScript compiler engine while analyzing - * the input .d.ts files. - * - * TypeScript message identifiers start with "TS" followed by an integer. For example: "TS2551" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "compilerMessageReporting": { - /** - * Configures the default routing for messages that don't match an explicit rule in this table. - */ - "default": { - /** - * Specifies whether the message should be written to the the tool's output log. Note that - * the "addToApiReportFile" property may supersede this option. - * - * Possible values: "error", "warning", "none" - * - * Errors cause the build to fail and return a nonzero exit code. Warnings cause a production build fail - * and return a nonzero exit code. For a non-production build (e.g. when "api-extractor run" includes - * the "--local" option), the warning is displayed but the build will not fail. - * - * DEFAULT VALUE: "warning" - */ - "logLevel": "warning", - - /** - * When addToApiReportFile is true: If API Extractor is configured to write an API report file (.api.md), - * then the message will be written inside that file; otherwise, the message is instead logged according to - * the "logLevel" option. - * - * DEFAULT VALUE: false - */ - // "addToApiReportFile": false - }, - - // "TS2551": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by API Extractor during its analysis. - * - * API Extractor message identifiers start with "ae-". For example: "ae-extra-release-tag" - * - * DEFAULT VALUE: See api-extractor-defaults.json for the complete table of extractorMessageReporting mappings - */ - "extractorMessageReporting": { - "default": { - "logLevel": "error", - // "addToApiReportFile": false - }, - - "ae-missing-release-tag": { - "logLevel": "none" - }, - - "ae-setter-with-docs": { - "logLevel": "warning", - "addToApiReportFile": true - }, - - "ae-missing-getter": { - "logLevel": "warning", - "addToApiReportFile": true - } - - // "ae-extra-release-tag": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by the TSDoc parser when analyzing code comments. - * - * TSDoc message identifiers start with "tsdoc-". For example: "tsdoc-link-tag-unescaped-text" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "tsdocMessageReporting": { - "default": { - "logLevel": "none" - // "addToApiReportFile": false - } - } - } -} +{ + "extends": "../../api-extractor.json", + "mainEntryPointFilePath": "./lib/index.d.ts" +} \ No newline at end of file diff --git a/libraries/botbuilder/api-extractor.json b/libraries/botbuilder/api-extractor.json index 3c6a3b5585..0a7a404e16 100644 --- a/libraries/botbuilder/api-extractor.json +++ b/libraries/botbuilder/api-extractor.json @@ -1,375 +1,4 @@ -/** - * Config file for API Extractor. For more info, please visit: https://api-extractor.com - */ - { - "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", - - /** - * Optionally specifies another JSON config file that this file extends from. This provides a way for - * standard settings to be shared across multiple projects. - * - * If the path starts with "./" or "../", the path is resolved relative to the folder of the file that contains - * the "extends" field. Otherwise, the first path segment is interpreted as an NPM package name, and will be - * resolved using NodeJS require(). - * - * SUPPORTED TOKENS: none - * DEFAULT VALUE: "" - */ - // "extends": "./shared/api-extractor-base.json" - // "extends": "my-package/include/api-extractor-base.json" - - /** - * Determines the "" token that can be used with other config file settings. The project folder - * typically contains the tsconfig.json and package.json config files, but the path is user-defined. - * - * The path is resolved relative to the folder of the config file that contains the setting. - * - * The default value for "projectFolder" is the token "", which means the folder is determined by traversing - * parent folders, starting from the folder containing api-extractor.json, and stopping at the first folder - * that contains a tsconfig.json file. If a tsconfig.json file cannot be found in this way, then an error - * will be reported. - * - * SUPPORTED TOKENS: - * DEFAULT VALUE: "" - */ - // "projectFolder": "..", - - /** - * (REQUIRED) Specifies the .d.ts file to be used as the starting point for analysis. API Extractor - * analyzes the symbols exported by this module. - * - * The file extension must be ".d.ts" and not ".ts". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - */ - "mainEntryPointFilePath": "/lib/index.d.ts", - - /** - * A list of NPM package names whose exports should be treated as part of this package. - * - * For example, suppose that Webpack is used to generate a distributed bundle for the project "library1", - * and another NPM package "library2" is embedded in this bundle. Some types from library2 may become part - * of the exported API for library1, but by default API Extractor would generate a .d.ts rollup that explicitly - * imports library2. To avoid this, we can specify: - * - * "bundledPackages": [ "library2" ], - * - * This would direct API Extractor to embed those types directly in the .d.ts rollup, as if they had been - * local files for library1. - */ - "bundledPackages": [ ], - - /** - * Determines how the TypeScript compiler engine will be invoked by API Extractor. - */ - "compiler": { - /** - * Specifies the path to the tsconfig.json file to be used by API Extractor when analyzing the project. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * Note: This setting will be ignored if "overrideTsconfig" is used. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/tsconfig.json" - */ - // "tsconfigFilePath": "/tsconfig.json", - - /** - * Provides a compiler configuration that will be used instead of reading the tsconfig.json file from disk. - * The object must conform to the TypeScript tsconfig schema: - * - * http://json.schemastore.org/tsconfig - * - * If omitted, then the tsconfig.json file will be read from the "projectFolder". - * - * DEFAULT VALUE: no overrideTsconfig section - */ - // "overrideTsconfig": { - // . . . - // } - - /** - * This option causes the compiler to be invoked with the --skipLibCheck option. This option is not recommended - * and may cause API Extractor to produce incomplete or incorrect declarations, but it may be required when - * dependencies contain declarations that are incompatible with the TypeScript engine that API Extractor uses - * for its analysis. Where possible, the underlying issue should be fixed rather than relying on skipLibCheck. - * - * DEFAULT VALUE: false - */ - // "skipLibCheck": true, - }, - - /** - * Configures how the API report file (*.api.md) will be generated. - */ - "apiReport": { - /** - * (REQUIRED) Whether to generate an API report. - */ - "enabled": true, - - /** - * The filename for the API report files. It will be combined with "reportFolder" or "reportTempFolder" to produce - * a full file path. - * - * The file extension should be ".api.md", and the string should not contain a path separator such as "\" or "/". - * - * SUPPORTED TOKENS: , - * DEFAULT VALUE: ".api.md" - */ - // "reportFileName": ".api.md", - - /** - * Specifies the folder where the API report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * The API report file is normally tracked by Git. Changes to it can be used to trigger a branch policy, - * e.g. for an API review. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/etc/" - */ - // "reportFolder": "/etc/", - - /** - * Specifies the folder where the temporary report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * After the temporary file is written to disk, it is compared with the file in the "reportFolder". - * If they are different, a production build will fail. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/" - */ - // "reportTempFolder": "/temp/" - }, - - /** - * Configures how the doc model file (*.api.json) will be generated. - */ - "docModel": { - /** - * (REQUIRED) Whether to generate a doc model file. - */ - "enabled": true, - - /** - * The output path for the doc model file. The file extension should be ".api.json". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/.api.json" - */ - // "apiJsonFilePath": "/temp/.api.json" - }, - - /** - * Configures how the .d.ts rollup file will be generated. - */ - "dtsRollup": { - /** - * (REQUIRED) Whether to generate the .d.ts rollup file. - */ - "enabled": true, - - /** - * Specifies the output path for a .d.ts rollup file to be generated without any trimming. - * This file will include all declarations that are exported by the main entry point. - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/dist/.d.ts" - */ - // "untrimmedFilePath": "/dist/.d.ts", - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "beta" release. - * This file will include only declarations that are marked as "@public" or "@beta". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "betaTrimmedFilePath": "/dist/-beta.d.ts", - - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "public" release. - * This file will include only declarations that are marked as "@public". - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "publicTrimmedFilePath": "/dist/-public.d.ts", - - /** - * When a declaration is trimmed, by default it will be replaced by a code comment such as - * "Excluded from this release type: exampleMember". Set "omitTrimmingComments" to true to remove the - * declaration completely. - * - * DEFAULT VALUE: false - */ - // "omitTrimmingComments": true - }, - - /** - * Configures how the tsdoc-metadata.json file will be generated. - */ - "tsdocMetadata": { - /** - * Whether to generate the tsdoc-metadata.json file. - * - * DEFAULT VALUE: true - */ - // "enabled": true, - - /** - * Specifies where the TSDoc metadata file should be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * The default value is "", which causes the path to be automatically inferred from the "tsdocMetadata", - * "typings" or "main" fields of the project's package.json. If none of these fields are set, the lookup - * falls back to "tsdoc-metadata.json" in the package folder. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "tsdocMetadataFilePath": "/dist/tsdoc-metadata.json" - }, - - /** - * Specifies what type of newlines API Extractor should use when writing output files. By default, the output files - * will be written with Windows-style newlines. To use POSIX-style newlines, specify "lf" instead. - * To use the OS's default newline kind, specify "os". - * - * DEFAULT VALUE: "crlf" - */ - // "newlineKind": "crlf", - - /** - * Configures how API Extractor reports error and warning messages produced during analysis. - * - * There are three sources of messages: compiler messages, API Extractor messages, and TSDoc messages. - */ - "messages": { - /** - * Configures handling of diagnostic messages reported by the TypeScript compiler engine while analyzing - * the input .d.ts files. - * - * TypeScript message identifiers start with "TS" followed by an integer. For example: "TS2551" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "compilerMessageReporting": { - /** - * Configures the default routing for messages that don't match an explicit rule in this table. - */ - "default": { - /** - * Specifies whether the message should be written to the the tool's output log. Note that - * the "addToApiReportFile" property may supersede this option. - * - * Possible values: "error", "warning", "none" - * - * Errors cause the build to fail and return a nonzero exit code. Warnings cause a production build fail - * and return a nonzero exit code. For a non-production build (e.g. when "api-extractor run" includes - * the "--local" option), the warning is displayed but the build will not fail. - * - * DEFAULT VALUE: "warning" - */ - "logLevel": "warning", - - /** - * When addToApiReportFile is true: If API Extractor is configured to write an API report file (.api.md), - * then the message will be written inside that file; otherwise, the message is instead logged according to - * the "logLevel" option. - * - * DEFAULT VALUE: false - */ - // "addToApiReportFile": false - }, - - // "TS2551": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by API Extractor during its analysis. - * - * API Extractor message identifiers start with "ae-". For example: "ae-extra-release-tag" - * - * DEFAULT VALUE: See api-extractor-defaults.json for the complete table of extractorMessageReporting mappings - */ - "extractorMessageReporting": { - "default": { - "logLevel": "error", - // "addToApiReportFile": false - }, - - "ae-missing-release-tag": { - "logLevel": "none" - }, - - "ae-setter-with-docs": { - "logLevel": "warning", - "addToApiReportFile": true - }, - - "ae-missing-getter": { - "logLevel": "warning", - "addToApiReportFile": true - } - - // "ae-extra-release-tag": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by the TSDoc parser when analyzing code comments. - * - * TSDoc message identifiers start with "tsdoc-". For example: "tsdoc-link-tag-unescaped-text" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "tsdocMessageReporting": { - "default": { - "logLevel": "none" - // "addToApiReportFile": false - } - } - } -} +{ + "extends": "../../api-extractor.json", + "mainEntryPointFilePath": "./lib/index.d.ts" +} \ No newline at end of file diff --git a/libraries/botframework-config/api-extractor.json b/libraries/botframework-config/api-extractor.json index 3c6a3b5585..0a7a404e16 100644 --- a/libraries/botframework-config/api-extractor.json +++ b/libraries/botframework-config/api-extractor.json @@ -1,375 +1,4 @@ -/** - * Config file for API Extractor. For more info, please visit: https://api-extractor.com - */ - { - "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", - - /** - * Optionally specifies another JSON config file that this file extends from. This provides a way for - * standard settings to be shared across multiple projects. - * - * If the path starts with "./" or "../", the path is resolved relative to the folder of the file that contains - * the "extends" field. Otherwise, the first path segment is interpreted as an NPM package name, and will be - * resolved using NodeJS require(). - * - * SUPPORTED TOKENS: none - * DEFAULT VALUE: "" - */ - // "extends": "./shared/api-extractor-base.json" - // "extends": "my-package/include/api-extractor-base.json" - - /** - * Determines the "" token that can be used with other config file settings. The project folder - * typically contains the tsconfig.json and package.json config files, but the path is user-defined. - * - * The path is resolved relative to the folder of the config file that contains the setting. - * - * The default value for "projectFolder" is the token "", which means the folder is determined by traversing - * parent folders, starting from the folder containing api-extractor.json, and stopping at the first folder - * that contains a tsconfig.json file. If a tsconfig.json file cannot be found in this way, then an error - * will be reported. - * - * SUPPORTED TOKENS: - * DEFAULT VALUE: "" - */ - // "projectFolder": "..", - - /** - * (REQUIRED) Specifies the .d.ts file to be used as the starting point for analysis. API Extractor - * analyzes the symbols exported by this module. - * - * The file extension must be ".d.ts" and not ".ts". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - */ - "mainEntryPointFilePath": "/lib/index.d.ts", - - /** - * A list of NPM package names whose exports should be treated as part of this package. - * - * For example, suppose that Webpack is used to generate a distributed bundle for the project "library1", - * and another NPM package "library2" is embedded in this bundle. Some types from library2 may become part - * of the exported API for library1, but by default API Extractor would generate a .d.ts rollup that explicitly - * imports library2. To avoid this, we can specify: - * - * "bundledPackages": [ "library2" ], - * - * This would direct API Extractor to embed those types directly in the .d.ts rollup, as if they had been - * local files for library1. - */ - "bundledPackages": [ ], - - /** - * Determines how the TypeScript compiler engine will be invoked by API Extractor. - */ - "compiler": { - /** - * Specifies the path to the tsconfig.json file to be used by API Extractor when analyzing the project. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * Note: This setting will be ignored if "overrideTsconfig" is used. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/tsconfig.json" - */ - // "tsconfigFilePath": "/tsconfig.json", - - /** - * Provides a compiler configuration that will be used instead of reading the tsconfig.json file from disk. - * The object must conform to the TypeScript tsconfig schema: - * - * http://json.schemastore.org/tsconfig - * - * If omitted, then the tsconfig.json file will be read from the "projectFolder". - * - * DEFAULT VALUE: no overrideTsconfig section - */ - // "overrideTsconfig": { - // . . . - // } - - /** - * This option causes the compiler to be invoked with the --skipLibCheck option. This option is not recommended - * and may cause API Extractor to produce incomplete or incorrect declarations, but it may be required when - * dependencies contain declarations that are incompatible with the TypeScript engine that API Extractor uses - * for its analysis. Where possible, the underlying issue should be fixed rather than relying on skipLibCheck. - * - * DEFAULT VALUE: false - */ - // "skipLibCheck": true, - }, - - /** - * Configures how the API report file (*.api.md) will be generated. - */ - "apiReport": { - /** - * (REQUIRED) Whether to generate an API report. - */ - "enabled": true, - - /** - * The filename for the API report files. It will be combined with "reportFolder" or "reportTempFolder" to produce - * a full file path. - * - * The file extension should be ".api.md", and the string should not contain a path separator such as "\" or "/". - * - * SUPPORTED TOKENS: , - * DEFAULT VALUE: ".api.md" - */ - // "reportFileName": ".api.md", - - /** - * Specifies the folder where the API report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * The API report file is normally tracked by Git. Changes to it can be used to trigger a branch policy, - * e.g. for an API review. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/etc/" - */ - // "reportFolder": "/etc/", - - /** - * Specifies the folder where the temporary report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * After the temporary file is written to disk, it is compared with the file in the "reportFolder". - * If they are different, a production build will fail. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/" - */ - // "reportTempFolder": "/temp/" - }, - - /** - * Configures how the doc model file (*.api.json) will be generated. - */ - "docModel": { - /** - * (REQUIRED) Whether to generate a doc model file. - */ - "enabled": true, - - /** - * The output path for the doc model file. The file extension should be ".api.json". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/.api.json" - */ - // "apiJsonFilePath": "/temp/.api.json" - }, - - /** - * Configures how the .d.ts rollup file will be generated. - */ - "dtsRollup": { - /** - * (REQUIRED) Whether to generate the .d.ts rollup file. - */ - "enabled": true, - - /** - * Specifies the output path for a .d.ts rollup file to be generated without any trimming. - * This file will include all declarations that are exported by the main entry point. - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/dist/.d.ts" - */ - // "untrimmedFilePath": "/dist/.d.ts", - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "beta" release. - * This file will include only declarations that are marked as "@public" or "@beta". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "betaTrimmedFilePath": "/dist/-beta.d.ts", - - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "public" release. - * This file will include only declarations that are marked as "@public". - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "publicTrimmedFilePath": "/dist/-public.d.ts", - - /** - * When a declaration is trimmed, by default it will be replaced by a code comment such as - * "Excluded from this release type: exampleMember". Set "omitTrimmingComments" to true to remove the - * declaration completely. - * - * DEFAULT VALUE: false - */ - // "omitTrimmingComments": true - }, - - /** - * Configures how the tsdoc-metadata.json file will be generated. - */ - "tsdocMetadata": { - /** - * Whether to generate the tsdoc-metadata.json file. - * - * DEFAULT VALUE: true - */ - // "enabled": true, - - /** - * Specifies where the TSDoc metadata file should be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * The default value is "", which causes the path to be automatically inferred from the "tsdocMetadata", - * "typings" or "main" fields of the project's package.json. If none of these fields are set, the lookup - * falls back to "tsdoc-metadata.json" in the package folder. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "tsdocMetadataFilePath": "/dist/tsdoc-metadata.json" - }, - - /** - * Specifies what type of newlines API Extractor should use when writing output files. By default, the output files - * will be written with Windows-style newlines. To use POSIX-style newlines, specify "lf" instead. - * To use the OS's default newline kind, specify "os". - * - * DEFAULT VALUE: "crlf" - */ - // "newlineKind": "crlf", - - /** - * Configures how API Extractor reports error and warning messages produced during analysis. - * - * There are three sources of messages: compiler messages, API Extractor messages, and TSDoc messages. - */ - "messages": { - /** - * Configures handling of diagnostic messages reported by the TypeScript compiler engine while analyzing - * the input .d.ts files. - * - * TypeScript message identifiers start with "TS" followed by an integer. For example: "TS2551" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "compilerMessageReporting": { - /** - * Configures the default routing for messages that don't match an explicit rule in this table. - */ - "default": { - /** - * Specifies whether the message should be written to the the tool's output log. Note that - * the "addToApiReportFile" property may supersede this option. - * - * Possible values: "error", "warning", "none" - * - * Errors cause the build to fail and return a nonzero exit code. Warnings cause a production build fail - * and return a nonzero exit code. For a non-production build (e.g. when "api-extractor run" includes - * the "--local" option), the warning is displayed but the build will not fail. - * - * DEFAULT VALUE: "warning" - */ - "logLevel": "warning", - - /** - * When addToApiReportFile is true: If API Extractor is configured to write an API report file (.api.md), - * then the message will be written inside that file; otherwise, the message is instead logged according to - * the "logLevel" option. - * - * DEFAULT VALUE: false - */ - // "addToApiReportFile": false - }, - - // "TS2551": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by API Extractor during its analysis. - * - * API Extractor message identifiers start with "ae-". For example: "ae-extra-release-tag" - * - * DEFAULT VALUE: See api-extractor-defaults.json for the complete table of extractorMessageReporting mappings - */ - "extractorMessageReporting": { - "default": { - "logLevel": "error", - // "addToApiReportFile": false - }, - - "ae-missing-release-tag": { - "logLevel": "none" - }, - - "ae-setter-with-docs": { - "logLevel": "warning", - "addToApiReportFile": true - }, - - "ae-missing-getter": { - "logLevel": "warning", - "addToApiReportFile": true - } - - // "ae-extra-release-tag": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by the TSDoc parser when analyzing code comments. - * - * TSDoc message identifiers start with "tsdoc-". For example: "tsdoc-link-tag-unescaped-text" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "tsdocMessageReporting": { - "default": { - "logLevel": "none" - // "addToApiReportFile": false - } - } - } -} +{ + "extends": "../../api-extractor.json", + "mainEntryPointFilePath": "./lib/index.d.ts" +} \ No newline at end of file diff --git a/libraries/botframework-schema/api-extractor.json b/libraries/botframework-schema/api-extractor.json index 3c6a3b5585..0a7a404e16 100644 --- a/libraries/botframework-schema/api-extractor.json +++ b/libraries/botframework-schema/api-extractor.json @@ -1,375 +1,4 @@ -/** - * Config file for API Extractor. For more info, please visit: https://api-extractor.com - */ - { - "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", - - /** - * Optionally specifies another JSON config file that this file extends from. This provides a way for - * standard settings to be shared across multiple projects. - * - * If the path starts with "./" or "../", the path is resolved relative to the folder of the file that contains - * the "extends" field. Otherwise, the first path segment is interpreted as an NPM package name, and will be - * resolved using NodeJS require(). - * - * SUPPORTED TOKENS: none - * DEFAULT VALUE: "" - */ - // "extends": "./shared/api-extractor-base.json" - // "extends": "my-package/include/api-extractor-base.json" - - /** - * Determines the "" token that can be used with other config file settings. The project folder - * typically contains the tsconfig.json and package.json config files, but the path is user-defined. - * - * The path is resolved relative to the folder of the config file that contains the setting. - * - * The default value for "projectFolder" is the token "", which means the folder is determined by traversing - * parent folders, starting from the folder containing api-extractor.json, and stopping at the first folder - * that contains a tsconfig.json file. If a tsconfig.json file cannot be found in this way, then an error - * will be reported. - * - * SUPPORTED TOKENS: - * DEFAULT VALUE: "" - */ - // "projectFolder": "..", - - /** - * (REQUIRED) Specifies the .d.ts file to be used as the starting point for analysis. API Extractor - * analyzes the symbols exported by this module. - * - * The file extension must be ".d.ts" and not ".ts". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - */ - "mainEntryPointFilePath": "/lib/index.d.ts", - - /** - * A list of NPM package names whose exports should be treated as part of this package. - * - * For example, suppose that Webpack is used to generate a distributed bundle for the project "library1", - * and another NPM package "library2" is embedded in this bundle. Some types from library2 may become part - * of the exported API for library1, but by default API Extractor would generate a .d.ts rollup that explicitly - * imports library2. To avoid this, we can specify: - * - * "bundledPackages": [ "library2" ], - * - * This would direct API Extractor to embed those types directly in the .d.ts rollup, as if they had been - * local files for library1. - */ - "bundledPackages": [ ], - - /** - * Determines how the TypeScript compiler engine will be invoked by API Extractor. - */ - "compiler": { - /** - * Specifies the path to the tsconfig.json file to be used by API Extractor when analyzing the project. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * Note: This setting will be ignored if "overrideTsconfig" is used. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/tsconfig.json" - */ - // "tsconfigFilePath": "/tsconfig.json", - - /** - * Provides a compiler configuration that will be used instead of reading the tsconfig.json file from disk. - * The object must conform to the TypeScript tsconfig schema: - * - * http://json.schemastore.org/tsconfig - * - * If omitted, then the tsconfig.json file will be read from the "projectFolder". - * - * DEFAULT VALUE: no overrideTsconfig section - */ - // "overrideTsconfig": { - // . . . - // } - - /** - * This option causes the compiler to be invoked with the --skipLibCheck option. This option is not recommended - * and may cause API Extractor to produce incomplete or incorrect declarations, but it may be required when - * dependencies contain declarations that are incompatible with the TypeScript engine that API Extractor uses - * for its analysis. Where possible, the underlying issue should be fixed rather than relying on skipLibCheck. - * - * DEFAULT VALUE: false - */ - // "skipLibCheck": true, - }, - - /** - * Configures how the API report file (*.api.md) will be generated. - */ - "apiReport": { - /** - * (REQUIRED) Whether to generate an API report. - */ - "enabled": true, - - /** - * The filename for the API report files. It will be combined with "reportFolder" or "reportTempFolder" to produce - * a full file path. - * - * The file extension should be ".api.md", and the string should not contain a path separator such as "\" or "/". - * - * SUPPORTED TOKENS: , - * DEFAULT VALUE: ".api.md" - */ - // "reportFileName": ".api.md", - - /** - * Specifies the folder where the API report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * The API report file is normally tracked by Git. Changes to it can be used to trigger a branch policy, - * e.g. for an API review. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/etc/" - */ - // "reportFolder": "/etc/", - - /** - * Specifies the folder where the temporary report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * After the temporary file is written to disk, it is compared with the file in the "reportFolder". - * If they are different, a production build will fail. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/" - */ - // "reportTempFolder": "/temp/" - }, - - /** - * Configures how the doc model file (*.api.json) will be generated. - */ - "docModel": { - /** - * (REQUIRED) Whether to generate a doc model file. - */ - "enabled": true, - - /** - * The output path for the doc model file. The file extension should be ".api.json". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/.api.json" - */ - // "apiJsonFilePath": "/temp/.api.json" - }, - - /** - * Configures how the .d.ts rollup file will be generated. - */ - "dtsRollup": { - /** - * (REQUIRED) Whether to generate the .d.ts rollup file. - */ - "enabled": true, - - /** - * Specifies the output path for a .d.ts rollup file to be generated without any trimming. - * This file will include all declarations that are exported by the main entry point. - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/dist/.d.ts" - */ - // "untrimmedFilePath": "/dist/.d.ts", - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "beta" release. - * This file will include only declarations that are marked as "@public" or "@beta". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "betaTrimmedFilePath": "/dist/-beta.d.ts", - - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "public" release. - * This file will include only declarations that are marked as "@public". - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "publicTrimmedFilePath": "/dist/-public.d.ts", - - /** - * When a declaration is trimmed, by default it will be replaced by a code comment such as - * "Excluded from this release type: exampleMember". Set "omitTrimmingComments" to true to remove the - * declaration completely. - * - * DEFAULT VALUE: false - */ - // "omitTrimmingComments": true - }, - - /** - * Configures how the tsdoc-metadata.json file will be generated. - */ - "tsdocMetadata": { - /** - * Whether to generate the tsdoc-metadata.json file. - * - * DEFAULT VALUE: true - */ - // "enabled": true, - - /** - * Specifies where the TSDoc metadata file should be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * The default value is "", which causes the path to be automatically inferred from the "tsdocMetadata", - * "typings" or "main" fields of the project's package.json. If none of these fields are set, the lookup - * falls back to "tsdoc-metadata.json" in the package folder. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "tsdocMetadataFilePath": "/dist/tsdoc-metadata.json" - }, - - /** - * Specifies what type of newlines API Extractor should use when writing output files. By default, the output files - * will be written with Windows-style newlines. To use POSIX-style newlines, specify "lf" instead. - * To use the OS's default newline kind, specify "os". - * - * DEFAULT VALUE: "crlf" - */ - // "newlineKind": "crlf", - - /** - * Configures how API Extractor reports error and warning messages produced during analysis. - * - * There are three sources of messages: compiler messages, API Extractor messages, and TSDoc messages. - */ - "messages": { - /** - * Configures handling of diagnostic messages reported by the TypeScript compiler engine while analyzing - * the input .d.ts files. - * - * TypeScript message identifiers start with "TS" followed by an integer. For example: "TS2551" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "compilerMessageReporting": { - /** - * Configures the default routing for messages that don't match an explicit rule in this table. - */ - "default": { - /** - * Specifies whether the message should be written to the the tool's output log. Note that - * the "addToApiReportFile" property may supersede this option. - * - * Possible values: "error", "warning", "none" - * - * Errors cause the build to fail and return a nonzero exit code. Warnings cause a production build fail - * and return a nonzero exit code. For a non-production build (e.g. when "api-extractor run" includes - * the "--local" option), the warning is displayed but the build will not fail. - * - * DEFAULT VALUE: "warning" - */ - "logLevel": "warning", - - /** - * When addToApiReportFile is true: If API Extractor is configured to write an API report file (.api.md), - * then the message will be written inside that file; otherwise, the message is instead logged according to - * the "logLevel" option. - * - * DEFAULT VALUE: false - */ - // "addToApiReportFile": false - }, - - // "TS2551": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by API Extractor during its analysis. - * - * API Extractor message identifiers start with "ae-". For example: "ae-extra-release-tag" - * - * DEFAULT VALUE: See api-extractor-defaults.json for the complete table of extractorMessageReporting mappings - */ - "extractorMessageReporting": { - "default": { - "logLevel": "error", - // "addToApiReportFile": false - }, - - "ae-missing-release-tag": { - "logLevel": "none" - }, - - "ae-setter-with-docs": { - "logLevel": "warning", - "addToApiReportFile": true - }, - - "ae-missing-getter": { - "logLevel": "warning", - "addToApiReportFile": true - } - - // "ae-extra-release-tag": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by the TSDoc parser when analyzing code comments. - * - * TSDoc message identifiers start with "tsdoc-". For example: "tsdoc-link-tag-unescaped-text" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "tsdocMessageReporting": { - "default": { - "logLevel": "none" - // "addToApiReportFile": false - } - } - } -} +{ + "extends": "../../api-extractor.json", + "mainEntryPointFilePath": "./lib/index.d.ts" +} \ No newline at end of file diff --git a/libraries/botframework-streaming/api-extractor.json b/libraries/botframework-streaming/api-extractor.json index 3c6a3b5585..0a7a404e16 100644 --- a/libraries/botframework-streaming/api-extractor.json +++ b/libraries/botframework-streaming/api-extractor.json @@ -1,375 +1,4 @@ -/** - * Config file for API Extractor. For more info, please visit: https://api-extractor.com - */ - { - "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", - - /** - * Optionally specifies another JSON config file that this file extends from. This provides a way for - * standard settings to be shared across multiple projects. - * - * If the path starts with "./" or "../", the path is resolved relative to the folder of the file that contains - * the "extends" field. Otherwise, the first path segment is interpreted as an NPM package name, and will be - * resolved using NodeJS require(). - * - * SUPPORTED TOKENS: none - * DEFAULT VALUE: "" - */ - // "extends": "./shared/api-extractor-base.json" - // "extends": "my-package/include/api-extractor-base.json" - - /** - * Determines the "" token that can be used with other config file settings. The project folder - * typically contains the tsconfig.json and package.json config files, but the path is user-defined. - * - * The path is resolved relative to the folder of the config file that contains the setting. - * - * The default value for "projectFolder" is the token "", which means the folder is determined by traversing - * parent folders, starting from the folder containing api-extractor.json, and stopping at the first folder - * that contains a tsconfig.json file. If a tsconfig.json file cannot be found in this way, then an error - * will be reported. - * - * SUPPORTED TOKENS: - * DEFAULT VALUE: "" - */ - // "projectFolder": "..", - - /** - * (REQUIRED) Specifies the .d.ts file to be used as the starting point for analysis. API Extractor - * analyzes the symbols exported by this module. - * - * The file extension must be ".d.ts" and not ".ts". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - */ - "mainEntryPointFilePath": "/lib/index.d.ts", - - /** - * A list of NPM package names whose exports should be treated as part of this package. - * - * For example, suppose that Webpack is used to generate a distributed bundle for the project "library1", - * and another NPM package "library2" is embedded in this bundle. Some types from library2 may become part - * of the exported API for library1, but by default API Extractor would generate a .d.ts rollup that explicitly - * imports library2. To avoid this, we can specify: - * - * "bundledPackages": [ "library2" ], - * - * This would direct API Extractor to embed those types directly in the .d.ts rollup, as if they had been - * local files for library1. - */ - "bundledPackages": [ ], - - /** - * Determines how the TypeScript compiler engine will be invoked by API Extractor. - */ - "compiler": { - /** - * Specifies the path to the tsconfig.json file to be used by API Extractor when analyzing the project. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * Note: This setting will be ignored if "overrideTsconfig" is used. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/tsconfig.json" - */ - // "tsconfigFilePath": "/tsconfig.json", - - /** - * Provides a compiler configuration that will be used instead of reading the tsconfig.json file from disk. - * The object must conform to the TypeScript tsconfig schema: - * - * http://json.schemastore.org/tsconfig - * - * If omitted, then the tsconfig.json file will be read from the "projectFolder". - * - * DEFAULT VALUE: no overrideTsconfig section - */ - // "overrideTsconfig": { - // . . . - // } - - /** - * This option causes the compiler to be invoked with the --skipLibCheck option. This option is not recommended - * and may cause API Extractor to produce incomplete or incorrect declarations, but it may be required when - * dependencies contain declarations that are incompatible with the TypeScript engine that API Extractor uses - * for its analysis. Where possible, the underlying issue should be fixed rather than relying on skipLibCheck. - * - * DEFAULT VALUE: false - */ - // "skipLibCheck": true, - }, - - /** - * Configures how the API report file (*.api.md) will be generated. - */ - "apiReport": { - /** - * (REQUIRED) Whether to generate an API report. - */ - "enabled": true, - - /** - * The filename for the API report files. It will be combined with "reportFolder" or "reportTempFolder" to produce - * a full file path. - * - * The file extension should be ".api.md", and the string should not contain a path separator such as "\" or "/". - * - * SUPPORTED TOKENS: , - * DEFAULT VALUE: ".api.md" - */ - // "reportFileName": ".api.md", - - /** - * Specifies the folder where the API report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * The API report file is normally tracked by Git. Changes to it can be used to trigger a branch policy, - * e.g. for an API review. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/etc/" - */ - // "reportFolder": "/etc/", - - /** - * Specifies the folder where the temporary report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * After the temporary file is written to disk, it is compared with the file in the "reportFolder". - * If they are different, a production build will fail. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/" - */ - // "reportTempFolder": "/temp/" - }, - - /** - * Configures how the doc model file (*.api.json) will be generated. - */ - "docModel": { - /** - * (REQUIRED) Whether to generate a doc model file. - */ - "enabled": true, - - /** - * The output path for the doc model file. The file extension should be ".api.json". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/.api.json" - */ - // "apiJsonFilePath": "/temp/.api.json" - }, - - /** - * Configures how the .d.ts rollup file will be generated. - */ - "dtsRollup": { - /** - * (REQUIRED) Whether to generate the .d.ts rollup file. - */ - "enabled": true, - - /** - * Specifies the output path for a .d.ts rollup file to be generated without any trimming. - * This file will include all declarations that are exported by the main entry point. - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/dist/.d.ts" - */ - // "untrimmedFilePath": "/dist/.d.ts", - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "beta" release. - * This file will include only declarations that are marked as "@public" or "@beta". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "betaTrimmedFilePath": "/dist/-beta.d.ts", - - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "public" release. - * This file will include only declarations that are marked as "@public". - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "publicTrimmedFilePath": "/dist/-public.d.ts", - - /** - * When a declaration is trimmed, by default it will be replaced by a code comment such as - * "Excluded from this release type: exampleMember". Set "omitTrimmingComments" to true to remove the - * declaration completely. - * - * DEFAULT VALUE: false - */ - // "omitTrimmingComments": true - }, - - /** - * Configures how the tsdoc-metadata.json file will be generated. - */ - "tsdocMetadata": { - /** - * Whether to generate the tsdoc-metadata.json file. - * - * DEFAULT VALUE: true - */ - // "enabled": true, - - /** - * Specifies where the TSDoc metadata file should be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * The default value is "", which causes the path to be automatically inferred from the "tsdocMetadata", - * "typings" or "main" fields of the project's package.json. If none of these fields are set, the lookup - * falls back to "tsdoc-metadata.json" in the package folder. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "tsdocMetadataFilePath": "/dist/tsdoc-metadata.json" - }, - - /** - * Specifies what type of newlines API Extractor should use when writing output files. By default, the output files - * will be written with Windows-style newlines. To use POSIX-style newlines, specify "lf" instead. - * To use the OS's default newline kind, specify "os". - * - * DEFAULT VALUE: "crlf" - */ - // "newlineKind": "crlf", - - /** - * Configures how API Extractor reports error and warning messages produced during analysis. - * - * There are three sources of messages: compiler messages, API Extractor messages, and TSDoc messages. - */ - "messages": { - /** - * Configures handling of diagnostic messages reported by the TypeScript compiler engine while analyzing - * the input .d.ts files. - * - * TypeScript message identifiers start with "TS" followed by an integer. For example: "TS2551" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "compilerMessageReporting": { - /** - * Configures the default routing for messages that don't match an explicit rule in this table. - */ - "default": { - /** - * Specifies whether the message should be written to the the tool's output log. Note that - * the "addToApiReportFile" property may supersede this option. - * - * Possible values: "error", "warning", "none" - * - * Errors cause the build to fail and return a nonzero exit code. Warnings cause a production build fail - * and return a nonzero exit code. For a non-production build (e.g. when "api-extractor run" includes - * the "--local" option), the warning is displayed but the build will not fail. - * - * DEFAULT VALUE: "warning" - */ - "logLevel": "warning", - - /** - * When addToApiReportFile is true: If API Extractor is configured to write an API report file (.api.md), - * then the message will be written inside that file; otherwise, the message is instead logged according to - * the "logLevel" option. - * - * DEFAULT VALUE: false - */ - // "addToApiReportFile": false - }, - - // "TS2551": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by API Extractor during its analysis. - * - * API Extractor message identifiers start with "ae-". For example: "ae-extra-release-tag" - * - * DEFAULT VALUE: See api-extractor-defaults.json for the complete table of extractorMessageReporting mappings - */ - "extractorMessageReporting": { - "default": { - "logLevel": "error", - // "addToApiReportFile": false - }, - - "ae-missing-release-tag": { - "logLevel": "none" - }, - - "ae-setter-with-docs": { - "logLevel": "warning", - "addToApiReportFile": true - }, - - "ae-missing-getter": { - "logLevel": "warning", - "addToApiReportFile": true - } - - // "ae-extra-release-tag": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by the TSDoc parser when analyzing code comments. - * - * TSDoc message identifiers start with "tsdoc-". For example: "tsdoc-link-tag-unescaped-text" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "tsdocMessageReporting": { - "default": { - "logLevel": "none" - // "addToApiReportFile": false - } - } - } -} +{ + "extends": "../../api-extractor.json", + "mainEntryPointFilePath": "./lib/index.d.ts" +} \ No newline at end of file From 6a8526f11f407d4071ee9a3af8b79c7a670ebaad Mon Sep 17 00:00:00 2001 From: Michael Richardson Date: Wed, 19 May 2021 14:05:56 -0700 Subject: [PATCH 13/13] extend from root api-extractor.json --- .../api-extractor.json | 379 +----------------- 1 file changed, 4 insertions(+), 375 deletions(-) diff --git a/libraries/botbuilder-dialogs-adaptive-testing/api-extractor.json b/libraries/botbuilder-dialogs-adaptive-testing/api-extractor.json index 5157fe0ea4..40b8479dfe 100644 --- a/libraries/botbuilder-dialogs-adaptive-testing/api-extractor.json +++ b/libraries/botbuilder-dialogs-adaptive-testing/api-extractor.json @@ -1,375 +1,4 @@ -/** - * Config file for API Extractor. For more info, please visit: https://api-extractor.com - */ - { - "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", - - /** - * Optionally specifies another JSON config file that this file extends from. This provides a way for - * standard settings to be shared across multiple projects. - * - * If the path starts with "./" or "../", the path is resolved relative to the folder of the file that contains - * the "extends" field. Otherwise, the first path segment is interpreted as an NPM package name, and will be - * resolved using NodeJS require(). - * - * SUPPORTED TOKENS: none - * DEFAULT VALUE: "" - */ - // "extends": "./shared/api-extractor-base.json" - // "extends": "my-package/include/api-extractor-base.json" - - /** - * Determines the "" token that can be used with other config file settings. The project folder - * typically contains the tsconfig.json and package.json config files, but the path is user-defined. - * - * The path is resolved relative to the folder of the config file that contains the setting. - * - * The default value for "projectFolder" is the token "", which means the folder is determined by traversing - * parent folders, starting from the folder containing api-extractor.json, and stopping at the first folder - * that contains a tsconfig.json file. If a tsconfig.json file cannot be found in this way, then an error - * will be reported. - * - * SUPPORTED TOKENS: - * DEFAULT VALUE: "" - */ - // "projectFolder": "..", - - /** - * (REQUIRED) Specifies the .d.ts file to be used as the starting point for analysis. API Extractor - * analyzes the symbols exported by this module. - * - * The file extension must be ".d.ts" and not ".ts". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - */ - "mainEntryPointFilePath": "/lib/index.d.ts", - - /** - * A list of NPM package names whose exports should be treated as part of this package. - * - * For example, suppose that Webpack is used to generate a distributed bundle for the project "library1", - * and another NPM package "library2" is embedded in this bundle. Some types from library2 may become part - * of the exported API for library1, but by default API Extractor would generate a .d.ts rollup that explicitly - * imports library2. To avoid this, we can specify: - * - * "bundledPackages": [ "library2" ], - * - * This would direct API Extractor to embed those types directly in the .d.ts rollup, as if they had been - * local files for library1. - */ - "bundledPackages": [ ], - - /** - * Determines how the TypeScript compiler engine will be invoked by API Extractor. - */ - "compiler": { - /** - * Specifies the path to the tsconfig.json file to be used by API Extractor when analyzing the project. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * Note: This setting will be ignored if "overrideTsconfig" is used. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/tsconfig.json" - */ - // "tsconfigFilePath": "/tsconfig.json", - - /** - * Provides a compiler configuration that will be used instead of reading the tsconfig.json file from disk. - * The object must conform to the TypeScript tsconfig schema: - * - * http://json.schemastore.org/tsconfig - * - * If omitted, then the tsconfig.json file will be read from the "projectFolder". - * - * DEFAULT VALUE: no overrideTsconfig section - */ - // "overrideTsconfig": { - // . . . - // } - - /** - * This option causes the compiler to be invoked with the --skipLibCheck option. This option is not recommended - * and may cause API Extractor to produce incomplete or incorrect declarations, but it may be required when - * dependencies contain declarations that are incompatible with the TypeScript engine that API Extractor uses - * for its analysis. Where possible, the underlying issue should be fixed rather than relying on skipLibCheck. - * - * DEFAULT VALUE: false - */ - // "skipLibCheck": true, - }, - - /** - * Configures how the API report file (*.api.md) will be generated. - */ - "apiReport": { - /** - * (REQUIRED) Whether to generate an API report. - */ - "enabled": true, - - /** - * The filename for the API report files. It will be combined with "reportFolder" or "reportTempFolder" to produce - * a full file path. - * - * The file extension should be ".api.md", and the string should not contain a path separator such as "\" or "/". - * - * SUPPORTED TOKENS: , - * DEFAULT VALUE: ".api.md" - */ - // "reportFileName": ".api.md", - - /** - * Specifies the folder where the API report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * The API report file is normally tracked by Git. Changes to it can be used to trigger a branch policy, - * e.g. for an API review. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/etc/" - */ - // "reportFolder": "/etc/", - - /** - * Specifies the folder where the temporary report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * After the temporary file is written to disk, it is compared with the file in the "reportFolder". - * If they are different, a production build will fail. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/" - */ - // "reportTempFolder": "/temp/" - }, - - /** - * Configures how the doc model file (*.api.json) will be generated. - */ - "docModel": { - /** - * (REQUIRED) Whether to generate a doc model file. - */ - "enabled": true, - - /** - * The output path for the doc model file. The file extension should be ".api.json". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/.api.json" - */ - // "apiJsonFilePath": "/temp/.api.json" - }, - - /** - * Configures how the .d.ts rollup file will be generated. - */ - "dtsRollup": { - /** - * (REQUIRED) Whether to generate the .d.ts rollup file. - */ - "enabled": true, - - /** - * Specifies the output path for a .d.ts rollup file to be generated without any trimming. - * This file will include all declarations that are exported by the main entry point. - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/dist/.d.ts" - */ - // "untrimmedFilePath": "/dist/.d.ts", - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "beta" release. - * This file will include only declarations that are marked as "@public" or "@beta". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "betaTrimmedFilePath": "/dist/-beta.d.ts", - - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "public" release. - * This file will include only declarations that are marked as "@public". - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "publicTrimmedFilePath": "/dist/-public.d.ts", - - /** - * When a declaration is trimmed, by default it will be replaced by a code comment such as - * "Excluded from this release type: exampleMember". Set "omitTrimmingComments" to true to remove the - * declaration completely. - * - * DEFAULT VALUE: false - */ - // "omitTrimmingComments": true - }, - - /** - * Configures how the tsdoc-metadata.json file will be generated. - */ - "tsdocMetadata": { - /** - * Whether to generate the tsdoc-metadata.json file. - * - * DEFAULT VALUE: true - */ - // "enabled": true, - - /** - * Specifies where the TSDoc metadata file should be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * The default value is "", which causes the path to be automatically inferred from the "tsdocMetadata", - * "typings" or "main" fields of the project's package.json. If none of these fields are set, the lookup - * falls back to "tsdoc-metadata.json" in the package folder. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "tsdocMetadataFilePath": "/dist/tsdoc-metadata.json" - }, - - /** - * Specifies what type of newlines API Extractor should use when writing output files. By default, the output files - * will be written with Windows-style newlines. To use POSIX-style newlines, specify "lf" instead. - * To use the OS's default newline kind, specify "os". - * - * DEFAULT VALUE: "crlf" - */ - // "newlineKind": "crlf", - - /** - * Configures how API Extractor reports error and warning messages produced during analysis. - * - * There are three sources of messages: compiler messages, API Extractor messages, and TSDoc messages. - */ - "messages": { - /** - * Configures handling of diagnostic messages reported by the TypeScript compiler engine while analyzing - * the input .d.ts files. - * - * TypeScript message identifiers start with "TS" followed by an integer. For example: "TS2551" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "compilerMessageReporting": { - /** - * Configures the default routing for messages that don't match an explicit rule in this table. - */ - "default": { - /** - * Specifies whether the message should be written to the the tool's output log. Note that - * the "addToApiReportFile" property may supersede this option. - * - * Possible values: "error", "warning", "none" - * - * Errors cause the build to fail and return a nonzero exit code. Warnings cause a production build fail - * and return a nonzero exit code. For a non-production build (e.g. when "api-extractor run" includes - * the "--local" option), the warning is displayed but the build will not fail. - * - * DEFAULT VALUE: "warning" - */ - "logLevel": "warning", - - /** - * When addToApiReportFile is true: If API Extractor is configured to write an API report file (.api.md), - * then the message will be written inside that file; otherwise, the message is instead logged according to - * the "logLevel" option. - * - * DEFAULT VALUE: false - */ - // "addToApiReportFile": false - }, - - // "TS2551": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by API Extractor during its analysis. - * - * API Extractor message identifiers start with "ae-". For example: "ae-extra-release-tag" - * - * DEFAULT VALUE: See api-extractor-defaults.json for the complete table of extractorMessageReporting mappings - */ - "extractorMessageReporting": { - "default": { - "logLevel": "error", - // "addToApiReportFile": false - }, - - "ae-missing-release-tag": { - "logLevel": "none" - }, - - "ae-setter-with-docs": { - "logLevel": "warning", - "addToApiReportFile": true - }, - - "ae-missing-getter": { - "logLevel": "warning", - "addToApiReportFile": true - } - - // "ae-extra-release-tag": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by the TSDoc parser when analyzing code comments. - * - * TSDoc message identifiers start with "tsdoc-". For example: "tsdoc-link-tag-unescaped-text" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "tsdocMessageReporting": { - "default": { - "logLevel": "none" - // "addToApiReportFile": false - } - } - } -} +{ + "extends": "../../api-extractor.json", + "mainEntryPointFilePath": "./lib/index.d.ts" +} \ No newline at end of file