{
	"id": 0,
	"name": "botbuilder",
	"kind": 0,
	"flags": {},
	"children": [
		{
			"id": 1,
			"name": "\"botFrameworkAdapter\"",
			"kind": 1,
			"kindString": "External module",
			"flags": {
				"isExported": true
			},
			"originalName": "C:/Users/chawe/source/repos/type2docfx/tmp/botbuilder/src/botFrameworkAdapter.ts",
			"comment": {
				"tags": [
					{
						"tag": "module",
						"text": "botbuilder\n"
					}
				]
			},
			"children": [
				{
					"id": 23,
					"name": "BotFrameworkAdapter",
					"kind": 128,
					"kindString": "Class",
					"flags": {
						"isExported": true
					},
					"comment": {
						"shortText": "ActivityAdapter class needed to communicate with a Bot Framework channel or the Emulator.",
						"tags": [
							{
								"tag": "remarks",
								"text": "\nThe following example shows the typical adapter setup:\n\n```JavaScript\nconst { BotFrameworkAdapter } = require('botbuilder');\n\nconst adapter = new BotFrameworkAdapter({\n   appId: process.env.MICROSOFT_APP_ID,\n   appPassword: process.env.MICROSOFT_APP_PASSWORD\n});\n```\n"
							}
						]
					},
					"children": [
						{
							"id": 27,
							"name": "constructor",
							"kind": 512,
							"kindString": "Constructor",
							"flags": {
								"isExported": true
							},
							"comment": {
								"shortText": "Creates a new BotFrameworkAdapter instance."
							},
							"signatures": [
								{
									"id": 28,
									"name": "new BotFrameworkAdapter",
									"kind": 16384,
									"kindString": "Constructor signature",
									"flags": {},
									"comment": {
										"shortText": "Creates a new BotFrameworkAdapter instance."
									},
									"parameters": [
										{
											"id": 29,
											"name": "settings",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {
												"isOptional": true
											},
											"comment": {
												"shortText": "(optional) configuration settings for the adapter.\n"
											},
											"type": {
												"type": "reference",
												"name": "Partial",
												"typeArguments": [
													{
														"type": "reference",
														"name": "BotFrameworkAdapterSettings",
														"id": 17
													}
												]
											}
										}
									],
									"type": {
										"type": "reference",
										"name": "BotFrameworkAdapter",
										"id": 23
									}
								}
							],
							"sources": [
								{
									"fileName": "botFrameworkAdapter.ts",
									"line": 72,
									"character": 61
								}
							]
						},
						{
							"id": 24,
							"name": "credentials",
							"kind": 1024,
							"kindString": "Property",
							"flags": {
								"isExported": true,
								"isProtected": true
							},
							"sources": [
								{
									"fileName": "botFrameworkAdapter.ts",
									"line": 70,
									"character": 34
								}
							],
							"type": {
								"type": "reference",
								"name": "MicrosoftAppCredentials"
							}
						},
						{
							"id": 25,
							"name": "credentialsProvider",
							"kind": 1024,
							"kindString": "Property",
							"flags": {
								"isExported": true,
								"isProtected": true
							},
							"sources": [
								{
									"fileName": "botFrameworkAdapter.ts",
									"line": 71,
									"character": 42
								}
							],
							"type": {
								"type": "reference",
								"name": "SimpleCredentialProvider"
							}
						},
						{
							"id": 26,
							"name": "settings",
							"kind": 1024,
							"kindString": "Property",
							"flags": {
								"isExported": true,
								"isProtected": true
							},
							"sources": [
								{
									"fileName": "botFrameworkAdapter.ts",
									"line": 72,
									"character": 31
								}
							],
							"type": {
								"type": "reference",
								"name": "BotFrameworkAdapterSettings",
								"id": 17
							}
						},
						{
							"id": 96,
							"name": "authenticateRequest",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isExported": true,
								"isProtected": true
							},
							"signatures": [
								{
									"id": 97,
									"name": "authenticateRequest",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"comment": {
										"shortText": "Allows for the overriding of authentication in unit tests."
									},
									"parameters": [
										{
											"id": 98,
											"name": "request",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "Received request."
											},
											"type": {
												"type": "reference",
												"name": "Partial",
												"typeArguments": [
													{
														"type": "reference",
														"name": "Activity"
													}
												]
											}
										},
										{
											"id": 99,
											"name": "authHeader",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "Received authentication header.\n"
											},
											"type": {
												"type": "intrinsic",
												"name": "string"
											}
										}
									],
									"type": {
										"type": "reference",
										"name": "Promise",
										"typeArguments": [
											{
												"type": "intrinsic",
												"name": "void"
											}
										]
									}
								}
							],
							"sources": [
								{
									"fileName": "botFrameworkAdapter.ts",
									"line": 513,
									"character": 33
								}
							]
						},
						{
							"id": 30,
							"name": "continueConversation",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isExported": true,
								"isPublic": true
							},
							"signatures": [
								{
									"id": 31,
									"name": "continueConversation",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"comment": {
										"shortText": "Continues a conversation with a user. This is often referred to as the bots \"Proactive Messaging\"\nflow as its lets the bot proactively send messages to a conversation or user that its already\ncommunicated with. Scenarios like sending notifications or coupons to a user are enabled by this\nmethod.",
										"tags": [
											{
												"tag": "remarks",
												"text": "\nThe processing steps for this method are very similar to [processActivity()](#processactivity)\nin that a `TurnContext` will be created which is then routed through the adapters middleware\nbefore calling the passed in logic handler. The key difference being that since an activity\nwasn't actually received it has to be created.  The created activity will have its address\nrelated fields populated but will have a `context.activity.type === undefined`.\n\n```JavaScript\nserver.post('/api/notifyUser', async (req, res) => {\n   // Lookup previously saved conversation reference\n   const reference = await findReference(req.body.refId);\n\n   // Proactively notify the user\n   if (reference) {\n      await adapter.continueConversation(reference, async (context) => {\n         await context.sendActivity(req.body.message);\n      });\n      res.send(200);\n   } else {\n      res.send(404);\n   }\n});\n```"
											}
										]
									},
									"parameters": [
										{
											"id": 32,
											"name": "reference",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "A `ConversationReference` saved during a previous message from a user.  This can be calculated for any incoming activity using `TurnContext.getConversationReference(context.activity)`."
											},
											"type": {
												"type": "reference",
												"name": "Partial",
												"typeArguments": [
													{
														"type": "reference",
														"name": "ConversationReference"
													}
												]
											}
										},
										{
											"id": 33,
											"name": "logic",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "A function handler that will be called to perform the bots logic after the the adapters middleware has been run.\n"
											},
											"type": {
												"type": "reflection",
												"declaration": {
													"id": 34,
													"name": "__type",
													"kind": 65536,
													"kindString": "Type literal",
													"flags": {},
													"signatures": [
														{
															"id": 35,
															"name": "__call",
															"kind": 4096,
															"kindString": "Call signature",
															"flags": {},
															"parameters": [
																{
																	"id": 36,
																	"name": "context",
																	"kind": 32768,
																	"kindString": "Parameter",
																	"flags": {},
																	"type": {
																		"type": "reference",
																		"name": "TurnContext"
																	}
																}
															],
															"type": {
																"type": "reference",
																"name": "Promiseable",
																"typeArguments": [
																	{
																		"type": "intrinsic",
																		"name": "void"
																	}
																]
															}
														}
													],
													"sources": [
														{
															"fileName": "botFrameworkAdapter.ts",
															"line": 117,
															"character": 81
														}
													]
												}
											}
										}
									],
									"type": {
										"type": "reference",
										"name": "Promise",
										"typeArguments": [
											{
												"type": "intrinsic",
												"name": "void"
											}
										]
									}
								}
							],
							"sources": [
								{
									"fileName": "botFrameworkAdapter.ts",
									"line": 117,
									"character": 31
								}
							]
						},
						{
							"id": 100,
							"name": "createConnectorClient",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isExported": true,
								"isProtected": true
							},
							"signatures": [
								{
									"id": 101,
									"name": "createConnectorClient",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"comment": {
										"shortText": "Allows for mocking of the connector client in unit tests."
									},
									"parameters": [
										{
											"id": 102,
											"name": "serviceUrl",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "Clients service url.\n"
											},
											"type": {
												"type": "intrinsic",
												"name": "string"
											}
										}
									],
									"type": {
										"type": "reference",
										"name": "ConnectorClient"
									}
								}
							],
							"sources": [
								{
									"fileName": "botFrameworkAdapter.ts",
									"line": 521,
									"character": 35
								}
							]
						},
						{
							"id": 106,
							"name": "createContext",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isExported": true,
								"isProtected": true
							},
							"signatures": [
								{
									"id": 107,
									"name": "createContext",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"comment": {
										"shortText": "Allows for the overriding of the context object in unit tests and derived adapters."
									},
									"parameters": [
										{
											"id": 108,
											"name": "request",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "Received request.\n"
											},
											"type": {
												"type": "reference",
												"name": "Partial",
												"typeArguments": [
													{
														"type": "reference",
														"name": "Activity"
													}
												]
											}
										}
									],
									"type": {
										"type": "reference",
										"name": "TurnContext"
									}
								}
							],
							"sources": [
								{
									"fileName": "botFrameworkAdapter.ts",
									"line": 539,
									"character": 27
								}
							]
						},
						{
							"id": 37,
							"name": "createConversation",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isExported": true,
								"isPublic": true
							},
							"signatures": [
								{
									"id": 38,
									"name": "createConversation",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"comment": {
										"shortText": "Starts a new conversation with a user. This is typically used to Direct Message (DM) a member\nof a group.",
										"tags": [
											{
												"tag": "remarks",
												"text": "\nThe processing steps for this method are very similar to [processActivity()](#processactivity)\nin that a `TurnContext` will be created which is then routed through the adapters middleware\nbefore calling the passed in logic handler. The key difference being that since an activity\nwasn't actually received it has to be created.  The created activity will have its address\nrelated fields populated but will have a `context.activity.type === undefined`.\n\n```JavaScript\n// Get group members conversation reference\nconst reference = TurnContext.getConversationReference(context.activity);\n\n// Start a new conversation with the user\nawait adapter.createConversation(reference, async (ctx) => {\n   await ctx.sendActivity(`Hi (in private)`);\n});\n```"
											}
										]
									},
									"parameters": [
										{
											"id": 39,
											"name": "reference",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "A `ConversationReference` of the user to start a new conversation with.  This can be calculated for any incoming activity using `TurnContext.getConversationReference(context.activity)`."
											},
											"type": {
												"type": "reference",
												"name": "Partial",
												"typeArguments": [
													{
														"type": "reference",
														"name": "ConversationReference"
													}
												]
											}
										},
										{
											"id": 40,
											"name": "logic",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "A function handler that will be called to perform the bots logic after the the adapters middleware has been run.\n"
											},
											"type": {
												"type": "reflection",
												"declaration": {
													"id": 41,
													"name": "__type",
													"kind": 65536,
													"kindString": "Type literal",
													"flags": {},
													"signatures": [
														{
															"id": 42,
															"name": "__call",
															"kind": 4096,
															"kindString": "Call signature",
															"flags": {},
															"parameters": [
																{
																	"id": 43,
																	"name": "context",
																	"kind": 32768,
																	"kindString": "Parameter",
																	"flags": {},
																	"type": {
																		"type": "reference",
																		"name": "TurnContext"
																	}
																}
															],
															"type": {
																"type": "reference",
																"name": "Promiseable",
																"typeArguments": [
																	{
																		"type": "intrinsic",
																		"name": "void"
																	}
																]
															}
														}
													],
													"sources": [
														{
															"fileName": "botFrameworkAdapter.ts",
															"line": 146,
															"character": 79
														}
													]
												}
											}
										}
									],
									"type": {
										"type": "reference",
										"name": "Promise",
										"typeArguments": [
											{
												"type": "intrinsic",
												"name": "void"
											}
										]
									}
								}
							],
							"sources": [
								{
									"fileName": "botFrameworkAdapter.ts",
									"line": 146,
									"character": 29
								}
							]
						},
						{
							"id": 103,
							"name": "createOAuthApiClient",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isExported": true,
								"isProtected": true
							},
							"signatures": [
								{
									"id": 104,
									"name": "createOAuthApiClient",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"comment": {
										"shortText": "Allows for mocking of the OAuth API Client in unit tests."
									},
									"parameters": [
										{
											"id": 105,
											"name": "serviceUrl",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "Clients service url.\n"
											},
											"type": {
												"type": "intrinsic",
												"name": "string"
											}
										}
									],
									"type": {
										"type": "reference",
										"name": "OAuthApiClient"
									}
								}
							],
							"sources": [
								{
									"fileName": "botFrameworkAdapter.ts",
									"line": 531,
									"character": 34
								}
							]
						},
						{
							"id": 44,
							"name": "deleteActivity",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isExported": true,
								"isPublic": true
							},
							"signatures": [
								{
									"id": 45,
									"name": "deleteActivity",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"comment": {
										"shortText": "Deletes an activity that was previously sent to a channel. It should be noted that not all\nchannels support this feature.",
										"tags": [
											{
												"tag": "remarks",
												"text": "\nCalling `TurnContext.deleteActivity()` is the preferred way of deleting activities as that\nwill ensure that any interested middleware has been notified."
											}
										]
									},
									"parameters": [
										{
											"id": 46,
											"name": "context",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "Context for the current turn of conversation with the user."
											},
											"type": {
												"type": "reference",
												"name": "TurnContext"
											}
										},
										{
											"id": 47,
											"name": "reference",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "Conversation reference information for the activity being deleted.\n"
											},
											"type": {
												"type": "reference",
												"name": "Partial",
												"typeArguments": [
													{
														"type": "reference",
														"name": "ConversationReference"
													}
												]
											}
										}
									],
									"type": {
										"type": "reference",
										"name": "Promise",
										"typeArguments": [
											{
												"type": "intrinsic",
												"name": "void"
											}
										]
									}
								}
							],
							"sources": [
								{
									"fileName": "botFrameworkAdapter.ts",
									"line": 178,
									"character": 25
								}
							]
						},
						{
							"id": 48,
							"name": "deleteConversationMember",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isExported": true,
								"isPublic": true
							},
							"signatures": [
								{
									"id": 49,
									"name": "deleteConversationMember",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"comment": {
										"shortText": "Deletes a member from the current conversation."
									},
									"parameters": [
										{
											"id": 50,
											"name": "context",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "Context for the current turn of conversation with the user."
											},
											"type": {
												"type": "reference",
												"name": "TurnContext"
											}
										},
										{
											"id": 51,
											"name": "memberId",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "ID of the member to delete from the conversation.\n"
											},
											"type": {
												"type": "intrinsic",
												"name": "string"
											}
										}
									],
									"type": {
										"type": "reference",
										"name": "Promise",
										"typeArguments": [
											{
												"type": "intrinsic",
												"name": "void"
											}
										]
									}
								}
							],
							"sources": [
								{
									"fileName": "botFrameworkAdapter.ts",
									"line": 195,
									"character": 35
								}
							]
						},
						{
							"id": 76,
							"name": "emulateOAuthCards",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isExported": true,
								"isPublic": true
							},
							"signatures": [
								{
									"id": 77,
									"name": "emulateOAuthCards",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"comment": {
										"shortText": "Tells the token service to emulate the sending of OAuthCards for a channel."
									},
									"parameters": [
										{
											"id": 78,
											"name": "contextOrServiceUrl",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "The URL of the channel server to query or a TurnContext.  This can be retrieved from `context.activity.serviceUrl`."
											},
											"type": {
												"type": "union",
												"types": [
													{
														"type": "reference",
														"name": "TurnContext"
													},
													{
														"type": "intrinsic",
														"name": "string"
													}
												]
											}
										},
										{
											"id": 79,
											"name": "emulate",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "If `true` the token service will emulate the sending of OAuthCards.\n"
											},
											"type": {
												"type": "intrinsic",
												"name": "boolean"
											}
										}
									],
									"type": {
										"type": "reference",
										"name": "Promise",
										"typeArguments": [
											{
												"type": "intrinsic",
												"name": "void"
											}
										]
									}
								}
							],
							"sources": [
								{
									"fileName": "botFrameworkAdapter.ts",
									"line": 318,
									"character": 28
								}
							]
						},
						{
							"id": 52,
							"name": "getActivityMembers",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isExported": true,
								"isPublic": true
							},
							"signatures": [
								{
									"id": 53,
									"name": "getActivityMembers",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"comment": {
										"shortText": "Lists the members of a given activity."
									},
									"parameters": [
										{
											"id": 54,
											"name": "context",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "Context for the current turn of conversation with the user."
											},
											"type": {
												"type": "reference",
												"name": "TurnContext"
											}
										},
										{
											"id": 55,
											"name": "activityId",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {
												"isOptional": true
											},
											"comment": {
												"text": "(Optional) activity ID to enumerate. If not specified the current activities ID will be used.\n"
											},
											"type": {
												"type": "intrinsic",
												"name": "string"
											}
										}
									],
									"type": {
										"type": "reference",
										"name": "Promise",
										"typeArguments": [
											{
												"type": "array",
												"elementType": {
													"type": "reference",
													"name": "ChannelAccount"
												}
											}
										]
									}
								}
							],
							"sources": [
								{
									"fileName": "botFrameworkAdapter.ts",
									"line": 213,
									"character": 29
								}
							]
						},
						{
							"id": 56,
							"name": "getConversationMembers",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isExported": true,
								"isPublic": true
							},
							"signatures": [
								{
									"id": 57,
									"name": "getConversationMembers",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"comment": {
										"shortText": "Lists the members of the current conversation."
									},
									"parameters": [
										{
											"id": 58,
											"name": "context",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "Context for the current turn of conversation with the user.\n"
											},
											"type": {
												"type": "reference",
												"name": "TurnContext"
											}
										}
									],
									"type": {
										"type": "reference",
										"name": "Promise",
										"typeArguments": [
											{
												"type": "array",
												"elementType": {
													"type": "reference",
													"name": "ChannelAccount"
												}
											}
										]
									}
								}
							],
							"sources": [
								{
									"fileName": "botFrameworkAdapter.ts",
									"line": 232,
									"character": 33
								}
							]
						},
						{
							"id": 59,
							"name": "getConversations",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isExported": true,
								"isPublic": true
							},
							"signatures": [
								{
									"id": 60,
									"name": "getConversations",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"comment": {
										"shortText": "Lists the Conversations in which this bot has participated for a given channel server. The\nchannel server returns results in pages and each page will include a `continuationToken`\nthat can be used to fetch the next page of results from the server."
									},
									"parameters": [
										{
											"id": 61,
											"name": "contextOrServiceUrl",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "The URL of the channel server to query or a TurnContext.  This can be retrieved from `context.activity.serviceUrl`."
											},
											"type": {
												"type": "union",
												"types": [
													{
														"type": "reference",
														"name": "TurnContext"
													},
													{
														"type": "intrinsic",
														"name": "string"
													}
												]
											}
										},
										{
											"id": 62,
											"name": "continuationToken",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {
												"isOptional": true
											},
											"comment": {
												"text": "(Optional) token used to fetch the next page of results from the channel server. This should be left as `undefined` to retrieve the first page of results.\n"
											},
											"type": {
												"type": "intrinsic",
												"name": "string"
											}
										}
									],
									"type": {
										"type": "reference",
										"name": "Promise",
										"typeArguments": [
											{
												"type": "reference",
												"name": "ConversationsResult"
											}
										]
									}
								}
							],
							"sources": [
								{
									"fileName": "botFrameworkAdapter.ts",
									"line": 252,
									"character": 27
								}
							]
						},
						{
							"id": 72,
							"name": "getSignInLink",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isExported": true,
								"isPublic": true
							},
							"signatures": [
								{
									"id": 73,
									"name": "getSignInLink",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"comment": {
										"shortText": "Gets a signin link from the token server that can be sent as part of a SigninCard."
									},
									"parameters": [
										{
											"id": 74,
											"name": "context",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "Context for the current turn of conversation with the user."
											},
											"type": {
												"type": "reference",
												"name": "TurnContext"
											}
										},
										{
											"id": 75,
											"name": "connectionName",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "Name of the auth connection to use.\n"
											},
											"type": {
												"type": "intrinsic",
												"name": "string"
											}
										}
									],
									"type": {
										"type": "reference",
										"name": "Promise",
										"typeArguments": [
											{
												"type": "intrinsic",
												"name": "string"
											}
										]
									}
								}
							],
							"sources": [
								{
									"fileName": "botFrameworkAdapter.ts",
									"line": 300,
									"character": 24
								}
							]
						},
						{
							"id": 63,
							"name": "getUserToken",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isExported": true,
								"isPublic": true
							},
							"signatures": [
								{
									"id": 64,
									"name": "getUserToken",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"comment": {
										"shortText": "Attempts to retrieve the token for a user that's in a signin flow."
									},
									"parameters": [
										{
											"id": 65,
											"name": "context",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "Context for the current turn of conversation with the user."
											},
											"type": {
												"type": "reference",
												"name": "TurnContext"
											}
										},
										{
											"id": 66,
											"name": "connectionName",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "Name of the auth connection to use."
											},
											"type": {
												"type": "intrinsic",
												"name": "string"
											}
										},
										{
											"id": 67,
											"name": "magicCode",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {
												"isOptional": true
											},
											"comment": {
												"text": "(Optional) Optional user entered code to validate.\n"
											},
											"type": {
												"type": "intrinsic",
												"name": "string"
											}
										}
									],
									"type": {
										"type": "reference",
										"name": "Promise",
										"typeArguments": [
											{
												"type": "reference",
												"name": "TokenResponse"
											}
										]
									}
								}
							],
							"sources": [
								{
									"fileName": "botFrameworkAdapter.ts",
									"line": 264,
									"character": 23
								}
							]
						},
						{
							"id": 80,
							"name": "processActivity",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isExported": true,
								"isPublic": true
							},
							"signatures": [
								{
									"id": 81,
									"name": "processActivity",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"comment": {
										"shortText": "Processes an activity received by the bots web server. This includes any messages sent from a\nuser and is the method that drives what's often referred to as the bots \"Reactive Messaging\"\nflow.",
										"tags": [
											{
												"tag": "remarks",
												"text": "\nThe following steps will be taken to process the activity:\n\n- The identity of the sender will be verified to be either the Emulator or a valid Microsoft\n  server. The bots `appId` and `appPassword` will be used during this process and the request\n  will be rejected if the senders identity can't be verified.\n- The activity will be parsed from the body of the incoming request. An error will be returned\n  if the activity can't be parsed.\n- A `TurnContext` instance will be created for the received activity and wrapped with a\n  [Revocable Proxy](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy/revocable).\n- The context will be routed through any middleware registered with the adapter using\n  [use()](#use).  Middleware is executed in the order in which it's added and any middleware\n  can intercept or prevent further routing of the context by simply not calling the passed\n  in `next()` function. This is called the \"Leading Edge\" of the request and middleware will\n  get a second chance to run on the \"Trailing Edge\" of the request after the bots logic has run.\n- Assuming the context hasn't been intercepted by a piece of middleware, the context will be\n  passed to the logic handler passed in.  The bot may perform an additional routing or\n  processing at this time. Returning a promise (or providing an `async` handler) will cause the\n  adapter to wait for any asynchronous operations to complete.\n- Once the bots logic completes the promise chain setup by the middleware stack will be resolved\n  giving middleware a second chance to run on the \"Trailing Edge\" of the request.\n- After the middleware stacks promise chain has been fully resolved the context object will be\n  `revoked()` and any future calls to the context will result in a `TypeError: Cannot perform\n  'set' on a proxy that has been revoked` being thrown.\n\n```JavaScript\nserver.post('/api/messages', (req, res) => {\n   // Route received request to adapter for processing\n   adapter.processActivity(req, res, async (context) => {\n       // Process any messages received\n       if (context.activity.type === 'message') {\n           await context.sendActivity(`Hello World`);\n       }\n   });\n});\n```"
											}
										]
									},
									"parameters": [
										{
											"id": 82,
											"name": "req",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "An Express or Restify style Request object."
											},
											"type": {
												"type": "reference",
												"name": "WebRequest",
												"id": 2
											}
										},
										{
											"id": 83,
											"name": "res",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "An Express or Restify style Response object."
											},
											"type": {
												"type": "reference",
												"name": "WebResponse",
												"id": 9
											}
										},
										{
											"id": 84,
											"name": "logic",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "A function handler that will be called to perform the bots logic after the received activity has been pre-processed by the adapter and routed through any middleware for processing.\n"
											},
											"type": {
												"type": "reflection",
												"declaration": {
													"id": 85,
													"name": "__type",
													"kind": 65536,
													"kindString": "Type literal",
													"flags": {},
													"signatures": [
														{
															"id": 86,
															"name": "__call",
															"kind": 4096,
															"kindString": "Call signature",
															"flags": {},
															"parameters": [
																{
																	"id": 87,
																	"name": "context",
																	"kind": 32768,
																	"kindString": "Parameter",
																	"flags": {},
																	"type": {
																		"type": "reference",
																		"name": "TurnContext"
																	}
																}
															],
															"type": {
																"type": "reference",
																"name": "Promiseable",
																"typeArguments": [
																	{
																		"type": "intrinsic",
																		"name": "any"
																	}
																]
															}
														}
													],
													"sources": [
														{
															"fileName": "botFrameworkAdapter.ts",
															"line": 369,
															"character": 68
														}
													]
												}
											}
										}
									],
									"type": {
										"type": "reference",
										"name": "Promise",
										"typeArguments": [
											{
												"type": "intrinsic",
												"name": "void"
											}
										]
									}
								}
							],
							"sources": [
								{
									"fileName": "botFrameworkAdapter.ts",
									"line": 369,
									"character": 26
								}
							]
						},
						{
							"id": 88,
							"name": "sendActivities",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isExported": true,
								"isPublic": true
							},
							"signatures": [
								{
									"id": 89,
									"name": "sendActivities",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"comment": {
										"shortText": "Sends a set of activities to a channels server(s). The activities will be sent one after\nanother in the order in which they're received.  A response object will be returned for each\nsent activity. For `message` activities this will contain the ID of the delivered message.",
										"tags": [
											{
												"tag": "remarks",
												"text": "\nCalling `TurnContext.sendActivities()` or `TurnContext.sendActivity()` is the preferred way of\nsending activities as that will ensure that outgoing activities have been properly addressed\nand that any interested middleware has been notified.\n\nThe primary scenario for calling this method directly is when you want to explicitly bypass\ngoing through any middleware. For instance, periodically sending a `typing` activity might\nbe a good reason to call this method directly as it would avoid any false signals from being\nlogged."
											}
										]
									},
									"parameters": [
										{
											"id": 90,
											"name": "context",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "Context for the current turn of conversation with the user."
											},
											"type": {
												"type": "reference",
												"name": "TurnContext"
											}
										},
										{
											"id": 91,
											"name": "activities",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "List of activities to send.\n"
											},
											"type": {
												"type": "array",
												"elementType": {
													"type": "reference",
													"name": "Partial",
													"typeArguments": [
														{
															"type": "reference",
															"name": "Activity"
														}
													]
												}
											}
										}
									],
									"type": {
										"type": "reference",
										"name": "Promise",
										"typeArguments": [
											{
												"type": "array",
												"elementType": {
													"type": "reference",
													"name": "ResourceResponse"
												}
											}
										]
									}
								}
							],
							"sources": [
								{
									"fileName": "botFrameworkAdapter.ts",
									"line": 424,
									"character": 25
								}
							]
						},
						{
							"id": 68,
							"name": "signOutUser",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isExported": true,
								"isPublic": true
							},
							"signatures": [
								{
									"id": 69,
									"name": "signOutUser",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"comment": {
										"shortText": "Signs the user out with the token server."
									},
									"parameters": [
										{
											"id": 70,
											"name": "context",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "Context for the current turn of conversation with the user."
											},
											"type": {
												"type": "reference",
												"name": "TurnContext"
											}
										},
										{
											"id": 71,
											"name": "connectionName",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "Name of the auth connection to use.\n"
											},
											"type": {
												"type": "intrinsic",
												"name": "string"
											}
										}
									],
									"type": {
										"type": "reference",
										"name": "Promise",
										"typeArguments": [
											{
												"type": "intrinsic",
												"name": "void"
											}
										]
									}
								}
							],
							"sources": [
								{
									"fileName": "botFrameworkAdapter.ts",
									"line": 282,
									"character": 22
								}
							]
						},
						{
							"id": 92,
							"name": "updateActivity",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isExported": true,
								"isPublic": true
							},
							"signatures": [
								{
									"id": 93,
									"name": "updateActivity",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"comment": {
										"shortText": "Replaces an activity that was previously sent to a channel. It should be noted that not all\nchannels support this feature.",
										"tags": [
											{
												"tag": "remarks",
												"text": "\nCalling `TurnContext.updateActivity()` is the preferred way of updating activities as that\nwill ensure that any interested middleware has been notified."
											}
										]
									},
									"parameters": [
										{
											"id": 94,
											"name": "context",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "Context for the current turn of conversation with the user."
											},
											"type": {
												"type": "reference",
												"name": "TurnContext"
											}
										},
										{
											"id": 95,
											"name": "activity",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "New activity to replace a current activity with.\n"
											},
											"type": {
												"type": "reference",
												"name": "Partial",
												"typeArguments": [
													{
														"type": "reference",
														"name": "Activity"
													}
												]
											}
										}
									],
									"type": {
										"type": "reference",
										"name": "Promise",
										"typeArguments": [
											{
												"type": "intrinsic",
												"name": "void"
											}
										]
									}
								}
							],
							"sources": [
								{
									"fileName": "botFrameworkAdapter.ts",
									"line": 492,
									"character": 25
								}
							]
						}
					],
					"groups": [
						{
							"title": "Constructors",
							"kind": 512,
							"children": [
								27
							]
						},
						{
							"title": "Properties",
							"kind": 1024,
							"children": [
								24,
								25,
								26
							]
						},
						{
							"title": "Methods",
							"kind": 2048,
							"children": [
								96,
								30,
								100,
								106,
								37,
								103,
								44,
								48,
								76,
								52,
								56,
								59,
								72,
								63,
								80,
								88,
								68,
								92
							]
						}
					],
					"sources": [
						{
							"fileName": "botFrameworkAdapter.ts",
							"line": 69,
							"character": 32
						}
					],
					"extendedTypes": [
						{
							"type": "reference",
							"name": "BotFrameworkAdapter",
							"id": 23
						}
					],
					"extendedBy": [
						{
							"type": "reference",
							"name": "BotFrameworkAdapter",
							"id": 23
						}
					]
				},
				{
					"id": 17,
					"name": "BotFrameworkAdapterSettings",
					"kind": 256,
					"kindString": "Interface",
					"flags": {
						"isExported": true
					},
					"comment": {
						"shortText": "Bot Framework Adapter Settings."
					},
					"children": [
						{
							"id": 18,
							"name": "appId",
							"kind": 1024,
							"kindString": "Property",
							"flags": {
								"isExported": true
							},
							"sources": [
								{
									"fileName": "botFrameworkAdapter.ts",
									"line": 36,
									"character": 9
								}
							],
							"type": {
								"type": "intrinsic",
								"name": "string"
							}
						},
						{
							"id": 19,
							"name": "appPassword",
							"kind": 1024,
							"kindString": "Property",
							"flags": {
								"isExported": true
							},
							"sources": [
								{
									"fileName": "botFrameworkAdapter.ts",
									"line": 37,
									"character": 15
								}
							],
							"type": {
								"type": "intrinsic",
								"name": "string"
							}
						}
					],
					"groups": [
						{
							"title": "Properties",
							"kind": 1024,
							"children": [
								18,
								19
							]
						}
					],
					"sources": [
						{
							"fileName": "botFrameworkAdapter.ts",
							"line": 35,
							"character": 44
						}
					]
				},
				{
					"id": 20,
					"name": "InvokeResponse",
					"kind": 256,
					"kindString": "Interface",
					"flags": {
						"isExported": true
					},
					"comment": {
						"shortText": "Response object expected to be sent in response to an `invoke` activity."
					},
					"children": [
						{
							"id": 22,
							"name": "body",
							"kind": 1024,
							"kindString": "Property",
							"flags": {
								"isExported": true,
								"isOptional": true
							},
							"sources": [
								{
									"fileName": "botFrameworkAdapter.ts",
									"line": 45,
									"character": 8
								}
							],
							"type": {
								"type": "intrinsic",
								"name": "any"
							}
						},
						{
							"id": 21,
							"name": "status",
							"kind": 1024,
							"kindString": "Property",
							"flags": {
								"isExported": true
							},
							"sources": [
								{
									"fileName": "botFrameworkAdapter.ts",
									"line": 44,
									"character": 10
								}
							],
							"type": {
								"type": "intrinsic",
								"name": "number"
							}
						}
					],
					"groups": [
						{
							"title": "Properties",
							"kind": 1024,
							"children": [
								22,
								21
							]
						}
					],
					"sources": [
						{
							"fileName": "botFrameworkAdapter.ts",
							"line": 43,
							"character": 31
						}
					]
				},
				{
					"id": 2,
					"name": "WebRequest",
					"kind": 256,
					"kindString": "Interface",
					"flags": {
						"isExported": true
					},
					"comment": {
						"shortText": "Express or Restify Request object."
					},
					"children": [
						{
							"id": 3,
							"name": "body",
							"kind": 1024,
							"kindString": "Property",
							"flags": {
								"isExported": true,
								"isOptional": true
							},
							"sources": [
								{
									"fileName": "botFrameworkAdapter.ts",
									"line": 19,
									"character": 8
								}
							],
							"type": {
								"type": "intrinsic",
								"name": "any"
							}
						},
						{
							"id": 4,
							"name": "headers",
							"kind": 1024,
							"kindString": "Property",
							"flags": {
								"isExported": true
							},
							"sources": [
								{
									"fileName": "botFrameworkAdapter.ts",
									"line": 20,
									"character": 11
								}
							],
							"type": {
								"type": "intrinsic",
								"name": "any"
							}
						},
						{
							"id": 5,
							"name": "on",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isExported": true
							},
							"signatures": [
								{
									"id": 6,
									"name": "on",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"parameters": [
										{
											"id": 7,
											"name": "event",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"type": {
												"type": "intrinsic",
												"name": "string"
											}
										},
										{
											"id": 8,
											"name": "args",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {
												"isRest": true
											},
											"type": {
												"type": "array",
												"elementType": {
													"type": "intrinsic",
													"name": "any"
												}
											}
										}
									],
									"type": {
										"type": "intrinsic",
										"name": "any"
									}
								}
							],
							"sources": [
								{
									"fileName": "botFrameworkAdapter.ts",
									"line": 21,
									"character": 6
								}
							]
						}
					],
					"groups": [
						{
							"title": "Properties",
							"kind": 1024,
							"children": [
								3,
								4
							]
						},
						{
							"title": "Methods",
							"kind": 2048,
							"children": [
								5
							]
						}
					],
					"sources": [
						{
							"fileName": "botFrameworkAdapter.ts",
							"line": 18,
							"character": 27
						}
					]
				},
				{
					"id": 9,
					"name": "WebResponse",
					"kind": 256,
					"kindString": "Interface",
					"flags": {
						"isExported": true
					},
					"comment": {
						"shortText": "Express or Restify Response object."
					},
					"children": [
						{
							"id": 10,
							"name": "end",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isExported": true
							},
							"signatures": [
								{
									"id": 11,
									"name": "end",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"parameters": [
										{
											"id": 12,
											"name": "args",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {
												"isRest": true
											},
											"type": {
												"type": "array",
												"elementType": {
													"type": "intrinsic",
													"name": "any"
												}
											}
										}
									],
									"type": {
										"type": "intrinsic",
										"name": "any"
									}
								}
							],
							"sources": [
								{
									"fileName": "botFrameworkAdapter.ts",
									"line": 28,
									"character": 7
								}
							]
						},
						{
							"id": 13,
							"name": "send",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isExported": true
							},
							"signatures": [
								{
									"id": 14,
									"name": "send",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"parameters": [
										{
											"id": 15,
											"name": "status",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"type": {
												"type": "intrinsic",
												"name": "number"
											}
										},
										{
											"id": 16,
											"name": "body",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {
												"isOptional": true
											},
											"type": {
												"type": "intrinsic",
												"name": "any"
											}
										}
									],
									"type": {
										"type": "intrinsic",
										"name": "any"
									}
								}
							],
							"sources": [
								{
									"fileName": "botFrameworkAdapter.ts",
									"line": 29,
									"character": 8
								}
							]
						}
					],
					"groups": [
						{
							"title": "Methods",
							"kind": 2048,
							"children": [
								10,
								13
							]
						}
					],
					"sources": [
						{
							"fileName": "botFrameworkAdapter.ts",
							"line": 27,
							"character": 28
						}
					]
				},
				{
					"id": 111,
					"name": "INVOKE_RESPONSE_KEY",
					"kind": 32,
					"kindString": "Variable",
					"flags": {
						"isConst": true
					},
					"sources": [
						{
							"fileName": "botFrameworkAdapter.ts",
							"line": 51,
							"character": 25
						}
					],
					"type": {
						"type": "intrinsic",
						"name": "any"
					},
					"defaultValue": " Symbol('invokeResponse')"
				},
				{
					"id": 110,
					"name": "USER_AGENT",
					"kind": 32,
					"kindString": "Variable",
					"flags": {
						"isConst": true
					},
					"sources": [
						{
							"fileName": "botFrameworkAdapter.ts",
							"line": 49,
							"character": 16
						}
					],
					"type": {
						"type": "intrinsic",
						"name": "string"
					},
					"defaultValue": " \"Microsoft-BotFramework/3.1 (BotBuilder JS/\" + pjson.version + \")\""
				},
				{
					"id": 109,
					"name": "pjson",
					"kind": 32,
					"kindString": "Variable",
					"flags": {
						"isConst": true
					},
					"sources": [
						{
							"fileName": "botFrameworkAdapter.ts",
							"line": 48,
							"character": 11
						}
					],
					"type": {
						"type": "intrinsic",
						"name": "any"
					},
					"defaultValue": " require('../package.json')"
				},
				{
					"id": 112,
					"name": "parseRequest",
					"kind": 64,
					"kindString": "Function",
					"flags": {},
					"signatures": [
						{
							"id": 113,
							"name": "parseRequest",
							"kind": 4096,
							"kindString": "Call signature",
							"flags": {},
							"parameters": [
								{
									"id": 114,
									"name": "req",
									"kind": 32768,
									"kindString": "Parameter",
									"flags": {},
									"type": {
										"type": "reference",
										"name": "WebRequest",
										"id": 2
									}
								}
							],
							"type": {
								"type": "reference",
								"name": "Promise",
								"typeArguments": [
									{
										"type": "reference",
										"name": "Activity"
									}
								]
							}
						}
					],
					"sources": [
						{
							"fileName": "botFrameworkAdapter.ts",
							"line": 545,
							"character": 21
						}
					]
				}
			],
			"groups": [
				{
					"title": "Classes",
					"kind": 128,
					"children": [
						23
					]
				},
				{
					"title": "Interfaces",
					"kind": 256,
					"children": [
						17,
						20,
						2,
						9
					]
				},
				{
					"title": "Variables",
					"kind": 32,
					"children": [
						111,
						110,
						109
					]
				},
				{
					"title": "Functions",
					"kind": 64,
					"children": [
						112
					]
				}
			],
			"sources": [
				{
					"fileName": "botFrameworkAdapter.ts",
					"line": 1,
					"character": 0
				}
			]
		},
		{
			"id": 115,
			"name": "\"consoleAdapter\"",
			"kind": 1,
			"kindString": "External module",
			"flags": {
				"isExported": true
			},
			"originalName": "C:/Users/chawe/source/repos/type2docfx/tmp/botbuilder/src/consoleAdapter.ts",
			"comment": {
				"tags": [
					{
						"tag": "module",
						"text": "botbuilder\n"
					}
				]
			},
			"children": [
				{
					"id": 116,
					"name": "ConsoleAdapter",
					"kind": 128,
					"kindString": "Class",
					"flags": {
						"isExported": true
					},
					"comment": {
						"shortText": "Lets a user communicate with a bot from a console window.",
						"tags": [
							{
								"tag": "remarks",
								"text": "\nThe following example shows the typical adapter setup:\n\n\n```JavaScript\nconst { ConsoleAdapter } = require('botbuilder');\n\nconst adapter = new ConsoleAdapter();\nconst closeFn = adapter.listen(async (context) => {\n   await context.sendActivity(`Hello World`);\n});\n```\n"
							}
						]
					},
					"children": [
						{
							"id": 119,
							"name": "constructor",
							"kind": 512,
							"kindString": "Constructor",
							"flags": {
								"isExported": true
							},
							"comment": {
								"shortText": "Creates a new ConsoleAdapter instance."
							},
							"signatures": [
								{
									"id": 120,
									"name": "new ConsoleAdapter",
									"kind": 16384,
									"kindString": "Constructor signature",
									"flags": {},
									"comment": {
										"shortText": "Creates a new ConsoleAdapter instance."
									},
									"parameters": [
										{
											"id": 121,
											"name": "reference",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {
												"isOptional": true
											},
											"comment": {
												"shortText": "(Optional) reference used to customize the address information of activites sent from the adapter.\n"
											},
											"type": {
												"type": "reference",
												"name": "ConversationReference"
											}
										}
									],
									"type": {
										"type": "reference",
										"name": "ConsoleAdapter",
										"id": 116
									}
								}
							],
							"sources": [
								{
									"fileName": "consoleAdapter.ts",
									"line": 29,
									"character": 54
								}
							]
						},
						{
							"id": 117,
							"name": "nextId",
							"kind": 1024,
							"kindString": "Property",
							"flags": {
								"isPrivate": true,
								"isExported": true
							},
							"sources": [
								{
									"fileName": "consoleAdapter.ts",
									"line": 28,
									"character": 18
								}
							],
							"type": {
								"type": "intrinsic",
								"name": "number"
							},
							"defaultValue": "0"
						},
						{
							"id": 118,
							"name": "reference",
							"kind": 1024,
							"kindString": "Property",
							"flags": {
								"isPrivate": true,
								"isExported": true
							},
							"sources": [
								{
									"fileName": "consoleAdapter.ts",
									"line": 29,
									"character": 30
								}
							],
							"type": {
								"type": "reference",
								"name": "ConversationReference"
							}
						},
						{
							"id": 128,
							"name": "continueConversation",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isExported": true,
								"isPublic": true
							},
							"signatures": [
								{
									"id": 129,
									"name": "continueConversation",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"comment": {
										"shortText": "Lets a bot proactively message the user.",
										"tags": [
											{
												"tag": "remarks",
												"text": "\nThe processing steps for this method are very similar to [listen()](#listen)\nin that a `TurnContext` will be created which is then routed through the adapters middleware\nbefore calling the passed in logic handler. The key difference being that since an activity\nwasn't actually received it has to be created.  The created activity will have its address\nrelated fields populated but will have a `context.activity.type === undefined`.\n\n```JavaScript\nfunction delayedNotify(context, message, delay) {\n   const reference = TurnContext.getConversationReference(context.activity);\n   setTimeout(() => {\n      adapter.continueConversation(reference, async (ctx) => {\n         await ctx.sendActivity(message);\n      });\n   }, delay);\n}\n```"
											}
										]
									},
									"parameters": [
										{
											"id": 130,
											"name": "reference",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "A `ConversationReference` saved during a previous message from a user.  This can be calculated for any incoming activity using `TurnContext.getConversationReference(context.activity)`."
											},
											"type": {
												"type": "reference",
												"name": "ConversationReference"
											}
										},
										{
											"id": 131,
											"name": "logic",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "A function handler that will be called to perform the bots logic after the the adapters middleware has been run.\n"
											},
											"type": {
												"type": "reflection",
												"declaration": {
													"id": 132,
													"name": "__type",
													"kind": 65536,
													"kindString": "Type literal",
													"flags": {},
													"signatures": [
														{
															"id": 133,
															"name": "__call",
															"kind": 4096,
															"kindString": "Call signature",
															"flags": {},
															"parameters": [
																{
																	"id": 134,
																	"name": "context",
																	"kind": 32768,
																	"kindString": "Parameter",
																	"flags": {},
																	"type": {
																		"type": "reference",
																		"name": "TurnContext"
																	}
																}
															],
															"type": {
																"type": "reference",
																"name": "Promiseable",
																"typeArguments": [
																	{
																		"type": "intrinsic",
																		"name": "void"
																	}
																]
															}
														}
													],
													"sources": [
														{
															"fileName": "consoleAdapter.ts",
															"line": 118,
															"character": 72
														}
													]
												}
											}
										}
									],
									"type": {
										"type": "reference",
										"name": "Promise",
										"typeArguments": [
											{
												"type": "intrinsic",
												"name": "void"
											}
										]
									}
								}
							],
							"sources": [
								{
									"fileName": "consoleAdapter.ts",
									"line": 118,
									"character": 31
								}
							]
						},
						{
							"id": 147,
							"name": "createInterface",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isExported": true,
								"isProtected": true
							},
							"signatures": [
								{
									"id": 148,
									"name": "createInterface",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"comment": {
										"shortText": "Allows for mocking of the console interface in unit tests."
									},
									"parameters": [
										{
											"id": 149,
											"name": "options",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "Console interface options.\n"
											},
											"type": {
												"type": "reference",
												"name": "ReadLineOptions"
											}
										}
									],
									"type": {
										"type": "reference",
										"name": "ReadLine"
									}
								}
							],
							"sources": [
								{
									"fileName": "consoleAdapter.ts",
									"line": 190,
									"character": 29
								}
							]
						},
						{
							"id": 143,
							"name": "deleteActivity",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isExported": true,
								"isPublic": true
							},
							"signatures": [
								{
									"id": 144,
									"name": "deleteActivity",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"comment": {
										"shortText": "Not supported for the ConsoleAdapter.  Calling this method or `TurnContext.deleteActivity()`\nwill result an error being returned."
									},
									"parameters": [
										{
											"id": 145,
											"name": "context",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"type": {
												"type": "reference",
												"name": "TurnContext"
											}
										},
										{
											"id": 146,
											"name": "reference",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"type": {
												"type": "reference",
												"name": "Partial",
												"typeArguments": [
													{
														"type": "reference",
														"name": "ConversationReference"
													}
												]
											}
										}
									],
									"type": {
										"type": "reference",
										"name": "Promise",
										"typeArguments": [
											{
												"type": "intrinsic",
												"name": "void"
											}
										]
									}
								}
							],
							"sources": [
								{
									"fileName": "consoleAdapter.ts",
									"line": 182,
									"character": 25
								}
							]
						},
						{
							"id": 122,
							"name": "listen",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isExported": true,
								"isPublic": true
							},
							"signatures": [
								{
									"id": 123,
									"name": "listen",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"comment": {
										"shortText": "Begins listening to console input. A function will be returned that can be used to stop the\nbot listening and therefore end the process.",
										"tags": [
											{
												"tag": "remarks",
												"text": "\nUpon receiving input from the console the flow is as follows:\n\n- An 'message' activity will be created containing the users input text.\n- A revokable `TurnContext` will be created for the activity.\n- The context will be routed through any middleware registered with [use()](#use).\n- The bots logic handler that was passed in will be executed.\n- The promise chain setup by the middleware stack will be resolved.\n- The context object will be revoked and any future calls to its members will result in a\n  `TypeError` being thrown.\n\n```JavaScript\nconst closeFn = adapter.listen(async (context) => {\n   const utterance = context.activity.text.toLowerCase();\n   if (utterance.includes('goodbye')) {\n      await context.sendActivity(`Ok... Goodbye`);\n      closeFn();\n   } else {\n      await context.sendActivity(`Hello World`);\n   }\n});\n```"
											}
										]
									},
									"parameters": [
										{
											"id": 124,
											"name": "logic",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "Function which will be called each time a message is input by the user.\n"
											},
											"type": {
												"type": "reflection",
												"declaration": {
													"id": 125,
													"name": "__type",
													"kind": 65536,
													"kindString": "Type literal",
													"flags": {},
													"signatures": [
														{
															"id": 126,
															"name": "__call",
															"kind": 4096,
															"kindString": "Call signature",
															"flags": {},
															"parameters": [
																{
																	"id": 127,
																	"name": "context",
																	"kind": 32768,
																	"kindString": "Parameter",
																	"flags": {},
																	"type": {
																		"type": "reference",
																		"name": "TurnContext"
																	}
																}
															],
															"type": {
																"type": "reference",
																"name": "Promiseable",
																"typeArguments": [
																	{
																		"type": "intrinsic",
																		"name": "void"
																	}
																]
															}
														}
													],
													"sources": [
														{
															"fileName": "consoleAdapter.ts",
															"line": 74,
															"character": 24
														}
													]
												}
											}
										}
									],
									"type": {
										"type": "reference",
										"name": "Function"
									}
								}
							],
							"sources": [
								{
									"fileName": "consoleAdapter.ts",
									"line": 74,
									"character": 17
								}
							]
						},
						{
							"id": 150,
							"name": "print",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isExported": true,
								"isProtected": true
							},
							"signatures": [
								{
									"id": 151,
									"name": "print",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"comment": {
										"shortText": "Logs text to the console."
									},
									"parameters": [
										{
											"id": 152,
											"name": "line",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "Text to print.\n"
											},
											"type": {
												"type": "intrinsic",
												"name": "string"
											}
										}
									],
									"type": {
										"type": "intrinsic",
										"name": "void"
									}
								}
							],
							"sources": [
								{
									"fileName": "consoleAdapter.ts",
									"line": 198,
									"character": 19
								}
							]
						},
						{
							"id": 153,
							"name": "printError",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isExported": true,
								"isProtected": true
							},
							"signatures": [
								{
									"id": 154,
									"name": "printError",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"comment": {
										"shortText": "Logs an error to the console."
									},
									"parameters": [
										{
											"id": 155,
											"name": "line",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "Error text to print.\n"
											},
											"type": {
												"type": "intrinsic",
												"name": "string"
											}
										}
									],
									"type": {
										"type": "intrinsic",
										"name": "void"
									}
								}
							],
							"sources": [
								{
									"fileName": "consoleAdapter.ts",
									"line": 206,
									"character": 24
								}
							]
						},
						{
							"id": 135,
							"name": "sendActivities",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isExported": true,
								"isPublic": true
							},
							"signatures": [
								{
									"id": 136,
									"name": "sendActivities",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"comment": {
										"shortText": "Logs a set of activities to the console.",
										"tags": [
											{
												"tag": "remarks",
												"text": "\nCalling `TurnContext.sendActivities()` or `TurnContext.sendActivity()` is the preferred way of\nsending activities as that will ensure that outgoing activities have been properly addressed\nand that any interested middleware has been notified."
											}
										]
									},
									"parameters": [
										{
											"id": 137,
											"name": "context",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "Context for the current turn of conversation with the user."
											},
											"type": {
												"type": "reference",
												"name": "TurnContext"
											}
										},
										{
											"id": 138,
											"name": "activities",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"text": "List of activities to send.\n"
											},
											"type": {
												"type": "array",
												"elementType": {
													"type": "reference",
													"name": "Partial",
													"typeArguments": [
														{
															"type": "reference",
															"name": "Activity"
														}
													]
												}
											}
										}
									],
									"type": {
										"type": "reference",
										"name": "Promise",
										"typeArguments": [
											{
												"type": "array",
												"elementType": {
													"type": "reference",
													"name": "ResourceResponse"
												}
											}
										]
									}
								}
							],
							"sources": [
								{
									"fileName": "consoleAdapter.ts",
									"line": 136,
									"character": 25
								}
							]
						},
						{
							"id": 139,
							"name": "updateActivity",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isExported": true,
								"isPublic": true
							},
							"signatures": [
								{
									"id": 140,
									"name": "updateActivity",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"comment": {
										"shortText": "Not supported for the ConsoleAdapter.  Calling this method or `TurnContext.updateActivity()`\nwill result an error being returned."
									},
									"parameters": [
										{
											"id": 141,
											"name": "context",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"type": {
												"type": "reference",
												"name": "TurnContext"
											}
										},
										{
											"id": 142,
											"name": "activity",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"type": {
												"type": "reference",
												"name": "Partial",
												"typeArguments": [
													{
														"type": "reference",
														"name": "Activity"
													}
												]
											}
										}
									],
									"type": {
										"type": "reference",
										"name": "Promise",
										"typeArguments": [
											{
												"type": "intrinsic",
												"name": "void"
											}
										]
									}
								}
							],
							"sources": [
								{
									"fileName": "consoleAdapter.ts",
									"line": 174,
									"character": 25
								}
							]
						}
					],
					"groups": [
						{
							"title": "Constructors",
							"kind": 512,
							"children": [
								119
							]
						},
						{
							"title": "Properties",
							"kind": 1024,
							"children": [
								117,
								118
							]
						},
						{
							"title": "Methods",
							"kind": 2048,
							"children": [
								128,
								147,
								143,
								122,
								150,
								153,
								135,
								139
							]
						}
					],
					"sources": [
						{
							"fileName": "consoleAdapter.ts",
							"line": 27,
							"character": 27
						}
					],
					"extendedTypes": [
						{
							"type": "reference",
							"name": "ConsoleAdapter",
							"id": 116
						}
					],
					"extendedBy": [
						{
							"type": "reference",
							"name": "ConsoleAdapter",
							"id": 116
						}
					]
				}
			],
			"groups": [
				{
					"title": "Classes",
					"kind": 128,
					"children": [
						116
					]
				}
			],
			"sources": [
				{
					"fileName": "consoleAdapter.ts",
					"line": 1,
					"character": 0
				}
			]
		},
		{
			"id": 156,
			"name": "\"fileStorage\"",
			"kind": 1,
			"kindString": "External module",
			"flags": {
				"isExported": true
			},
			"originalName": "C:/Users/chawe/source/repos/type2docfx/tmp/botbuilder/src/fileStorage.ts",
			"comment": {
				"tags": [
					{
						"tag": "module",
						"text": "botbuilder-node\n"
					}
				]
			},
			"children": [
				{
					"id": 157,
					"name": "FileStorage",
					"kind": 128,
					"kindString": "Class",
					"flags": {
						"isExported": true
					},
					"comment": {
						"shortText": "A file based storage provider. Items will be persisted to a folder on disk.",
						"tags": [
							{
								"tag": "remarks",
								"text": "\nThe following example shows how to construct a configured instance of the provider:\n\n```JavaScript\nconst { FileStorage } = require('botbuilder');\nconst path = require('path');\n\nconst storage = new FileStorage(path.join(__dirname, './state'));\n```\n"
							}
						]
					},
					"children": [
						{
							"id": 160,
							"name": "constructor",
							"kind": 512,
							"kindString": "Constructor",
							"flags": {
								"isExported": true,
								"isPublic": true
							},
							"comment": {
								"shortText": "Creates a new FileStorage instance."
							},
							"signatures": [
								{
									"id": 162,
									"name": "new FileStorage",
									"kind": 16384,
									"kindString": "Constructor signature",
									"flags": {},
									"comment": {
										"shortText": "Creates a new FileStorage instance."
									},
									"parameters": [
										{
											"id": 163,
											"name": "path",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"comment": {
												"shortText": "Root filesystem path for where the provider should store its items.\n"
											},
											"type": {
												"type": "intrinsic",
												"name": "string"
											}
										}
									],
									"type": {
										"type": "reference",
										"name": "FileStorage",
										"id": 157
									}
								}
							],
							"sources": [
								{
									"fileName": "fileStorage.ts",
									"line": 30,
									"character": 51
								}
							]
						},
						{
							"id": 159,
							"name": "pEnsureFolder",
							"kind": 1024,
							"kindString": "Property",
							"flags": {
								"isPrivate": true,
								"isExported": true
							},
							"sources": [
								{
									"fileName": "fileStorage.ts",
									"line": 30,
									"character": 25
								}
							],
							"type": {
								"type": "union",
								"types": [
									{
										"type": "reference",
										"name": "Promise",
										"typeArguments": [
											{
												"type": "intrinsic",
												"name": "void"
											}
										]
									},
									{
										"type": "intrinsic",
										"name": "undefined"
									}
								]
							}
						},
						{
							"id": 161,
							"name": "path",
							"kind": 1024,
							"kindString": "Property",
							"flags": {
								"isConstructorProperty": true,
								"isExported": true,
								"isProtected": true
							},
							"comment": {
								"shortText": "Root filesystem path for where the provider should store its items.\n"
							},
							"sources": [
								{
									"fileName": "fileStorage.ts",
									"line": 36,
									"character": 46
								}
							],
							"type": {
								"type": "intrinsic",
								"name": "string"
							}
						},
						{
							"id": 158,
							"name": "nextTag",
							"kind": 1024,
							"kindString": "Property",
							"flags": {
								"isStatic": true,
								"isExported": true
							},
							"sources": [
								{
									"fileName": "fileStorage.ts",
									"line": 29,
									"character": 18
								}
							],
							"type": {
								"type": "intrinsic",
								"name": "number"
							},
							"defaultValue": "0"
						},
						{
							"id": 170,
							"name": "delete",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isExported": true,
								"isPublic": true
							},
							"signatures": [
								{
									"id": 171,
									"name": "delete",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"parameters": [
										{
											"id": 172,
											"name": "keys",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"type": {
												"type": "array",
												"elementType": {
													"type": "intrinsic",
													"name": "string"
												}
											}
										}
									],
									"type": {
										"type": "reference",
										"name": "Promise",
										"typeArguments": [
											{
												"type": "intrinsic",
												"name": "void"
											}
										]
									}
								}
							],
							"sources": [
								{
									"fileName": "fileStorage.ts",
									"line": 78,
									"character": 17
								}
							]
						},
						{
							"id": 173,
							"name": "ensureFolder",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isPrivate": true,
								"isExported": true
							},
							"signatures": [
								{
									"id": 174,
									"name": "ensureFolder",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"type": {
										"type": "reference",
										"name": "Promise",
										"typeArguments": [
											{
												"type": "intrinsic",
												"name": "void"
											}
										]
									}
								}
							],
							"sources": [
								{
									"fileName": "fileStorage.ts",
									"line": 95,
									"character": 24
								}
							]
						},
						{
							"id": 175,
							"name": "getFileName",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isPrivate": true,
								"isExported": true
							},
							"signatures": [
								{
									"id": 176,
									"name": "getFileName",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"parameters": [
										{
											"id": 177,
											"name": "key",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"type": {
												"type": "intrinsic",
												"name": "string"
											}
										}
									],
									"type": {
										"type": "intrinsic",
										"name": "string"
									}
								}
							],
							"sources": [
								{
									"fileName": "fileStorage.ts",
									"line": 106,
									"character": 23
								}
							]
						},
						{
							"id": 178,
							"name": "getFilePath",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isPrivate": true,
								"isExported": true
							},
							"signatures": [
								{
									"id": 179,
									"name": "getFilePath",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"parameters": [
										{
											"id": 180,
											"name": "key",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"type": {
												"type": "intrinsic",
												"name": "string"
											}
										}
									],
									"type": {
										"type": "intrinsic",
										"name": "string"
									}
								}
							],
							"sources": [
								{
									"fileName": "fileStorage.ts",
									"line": 110,
									"character": 23
								}
							]
						},
						{
							"id": 164,
							"name": "read",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isExported": true,
								"isPublic": true
							},
							"signatures": [
								{
									"id": 165,
									"name": "read",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"parameters": [
										{
											"id": 166,
											"name": "keys",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"type": {
												"type": "array",
												"elementType": {
													"type": "intrinsic",
													"name": "string"
												}
											}
										}
									],
									"type": {
										"type": "reference",
										"name": "Promise",
										"typeArguments": [
											{
												"type": "reference",
												"name": "StoreItems"
											}
										]
									}
								}
							],
							"sources": [
								{
									"fileName": "fileStorage.ts",
									"line": 38,
									"character": 15
								}
							]
						},
						{
							"id": 167,
							"name": "write",
							"kind": 2048,
							"kindString": "Method",
							"flags": {
								"isExported": true,
								"isPublic": true
							},
							"signatures": [
								{
									"id": 168,
									"name": "write",
									"kind": 4096,
									"kindString": "Call signature",
									"flags": {},
									"parameters": [
										{
											"id": 169,
											"name": "changes",
											"kind": 32768,
											"kindString": "Parameter",
											"flags": {},
											"type": {
												"type": "reference",
												"name": "StoreItems"
											}
										}
									],
									"type": {
										"type": "reference",
										"name": "Promise",
										"typeArguments": [
											{
												"type": "intrinsic",
												"name": "void"
											}
										]
									}
								}
							],
							"sources": [
								{
									"fileName": "fileStorage.ts",
									"line": 57,
									"character": 16
								}
							]
						}
					],
					"groups": [
						{
							"title": "Constructors",
							"kind": 512,
							"children": [
								160
							]
						},
						{
							"title": "Properties",
							"kind": 1024,
							"children": [
								159,
								161,
								158
							]
						},
						{
							"title": "Methods",
							"kind": 2048,
							"children": [
								170,
								173,
								175,
								178,
								164,
								167
							]
						}
					],
					"sources": [
						{
							"fileName": "fileStorage.ts",
							"line": 28,
							"character": 24
						}
					],
					"implementedTypes": [
						{
							"type": "intrinsic",
							"name": "any"
						}
					]
				},
				{
					"id": 181,
					"name": "parseFile",
					"kind": 64,
					"kindString": "Function",
					"flags": {},
					"signatures": [
						{
							"id": 182,
							"name": "parseFile",
							"kind": 4096,
							"kindString": "Call signature",
							"flags": {},
							"parameters": [
								{
									"id": 183,
									"name": "filePath",
									"kind": 32768,
									"kindString": "Parameter",
									"flags": {},
									"type": {
										"type": "intrinsic",
										"name": "string"
									}
								}
							],
							"type": {
								"type": "reference",
								"name": "Promise",
								"typeArguments": [
									{
										"type": "union",
										"types": [
											{
												"type": "reference",
												"name": "Object"
											},
											{
												"type": "intrinsic",
												"name": "undefined"
											}
										]
									}
								]
							}
						}
					],
					"sources": [
						{
							"fileName": "fileStorage.ts",
							"line": 115,
							"character": 18
						}
					]
				}
			],
			"groups": [
				{
					"title": "Classes",
					"kind": 128,
					"children": [
						157
					]
				},
				{
					"title": "Functions",
					"kind": 64,
					"children": [
						181
					]
				}
			],
			"sources": [
				{
					"fileName": "fileStorage.ts",
					"line": 1,
					"character": 0
				}
			]
		},
		{
			"id": 184,
			"name": "\"index\"",
			"kind": 1,
			"kindString": "External module",
			"flags": {
				"isExported": true
			},
			"originalName": "C:/Users/chawe/source/repos/type2docfx/tmp/botbuilder/src/index.ts",
			"comment": {
				"tags": [
					{
						"tag": "module",
						"text": "botbuilder\n"
					}
				]
			},
			"sources": [
				{
					"fileName": "index.ts",
					"line": 1,
					"character": 0
				}
			]
		}
	],
	"groups": [
		{
			"title": "External modules",
			"kind": 1,
			"children": [
				1,
				115,
				156,
				184
			]
		}
	]
}