import { TokenExchangeInvokeResponse } from './token-exchange/token-exchange-invoke-response.mjs';
import { ConfigResponse } from './config/config-response.mjs';
import { TaskModuleResponse } from './task-module/task-module-response.mjs';
import { TabResponse } from './tab/tab-response.mjs';
import { MessagingExtensionResponse } from './messaging-extension/messaging-extension-response.mjs';
import { MessagingExtensionActionResponse } from './messaging-extension/messaging-extension-action-response.mjs';
import { AdaptiveCardActionResponse } from './adaptive-card/adaptive-card-action-response.mjs';
import { SearchInvokeResponse } from './search/search-response.mjs';
import { IHtmlWidgetCallToolResponse } from './html-widget/call-tool-result.mjs';
import './config/config-auth.mjs';
import './suggested-actions.mjs';
import './card/card-action.mjs';
import './cache-info.mjs';
import './task-module/task-module-continue-response.mjs';
import './task-module/task-module-response-base.mjs';
import './task-module/task-module-task-info.mjs';
import './attachment/attachment.mjs';
import './task-module/task-module-message-response.mjs';
import './tab/tab-response-card.mjs';
import './tab/tab-suggested-actions.mjs';
import './messaging-extension/messaging-extension-result.mjs';
import '../messaging-extension-action-BLQarj-i.mjs';
import '../activities/command/index.mjs';
import '../activities/command/command-result.mjs';
import '../activities/activity.mjs';
import './channel-id.mjs';
import './account.mjs';
import './agentic-identity.mjs';
import './conversation-type.mjs';
import './membership-source.mjs';
import './membership-source-types.mjs';
import './membership-types.mjs';
import './role.mjs';
import './conversation/conversation-reference.mjs';
import './entity/index.mjs';
import './entity/ai-message-entity.mjs';
import './entity/message-entity.mjs';
import './entity/citation-entity.mjs';
import './entity/sensitivity-usage-info.mjs';
import './entity/client-info-entity.mjs';
import './entity/mention-entity.mjs';
import './entity/product-info-entity.mjs';
import './entity/quoted-reply-entity.mjs';
import './entity/sensitive-usage-entity.mjs';
import './entity/stream-info-entity.mjs';
import './entity/targeted-message-info-entity.mjs';
import './channel-data/index.mjs';
import './meeting/meeting-info.mjs';
import './meeting/meeting-details.mjs';
import './channel-data/app-info.mjs';
import './channel-data/channel-info.mjs';
import './channel-data/chat-info.mjs';
import './channel-data/feedback-loop.mjs';
import './channel-data/notification-info.mjs';
import './channel-data/on-behalf-of.mjs';
import './channel-data/reply-chain-info.mjs';
import './channel-data/settings.mjs';
import './channel-data/source-info.mjs';
import './channel-data/team-info.mjs';
import './channel-data/tenant-info.mjs';
import '../activities/command/command-send.mjs';
import '../activities/conversation/index.mjs';
import '../activities/conversation/conversation-update.mjs';
import '../activities/conversation/end-of-conversation.mjs';
import '../activities/event/index.mjs';
import '../activities/event/agent-lifecycle.mjs';
import '../activities/event/meeting-end.mjs';
import '../activities/event/meeting-participant-join.mjs';
import '../activities/event/meeting-participant-leave.mjs';
import '../activities/event/meeting-start.mjs';
import '../activities/event/read-receipt.mjs';
import '../activities/handoff.mjs';
import '../activities/install-update/index.mjs';
import '../activities/install-update/add.mjs';
import '../activities/install-update/remove.mjs';
import '../activities/install-update/upgrade.mjs';
import '../activities/invoke/adaptive-card/index.mjs';
import '../activities/invoke/adaptive-card/action.mjs';
import './adaptive-card/adaptive-card-invoke-value.mjs';
import './adaptive-card/adaptive-card-authentication.mjs';
import './token-exchange/token-exchange-invoke-request.mjs';
import './adaptive-card/adaptive-card-invoke-action.mjs';
import '../activities/invoke/config/index.mjs';
import '../activities/invoke/config/config-fetch.mjs';
import '../activities/invoke/config/config-submit.mjs';
import '../activities/invoke/execute-action.mjs';
import './o365/o365-connector-card-action-query.mjs';
import '../activities/invoke/file-consent.mjs';
import './file/file-consent-card.mjs';
import './action.mjs';
import './file/file-upload-info.mjs';
import '../activities/invoke/handoff-action.mjs';
import '../activities/invoke/html-widget/call-tool.mjs';
import './html-widget/call-tool-request.mjs';
import '../activities/invoke/message/index.mjs';
import '../activities/invoke/message/fetch-task.mjs';
import '../activities/invoke/message/submit-action.mjs';
import '../activities/invoke/message-extension/anon-query-link.mjs';
import './app-based-link-query.mjs';
import '../activities/invoke/message-extension/card-button-clicked.mjs';
import './message/message.mjs';
import './importance.mjs';
import './message/message-body.mjs';
import './message/message-from.mjs';
import './message/message-app.mjs';
import './message/message-conversation.mjs';
import './message/message-user.mjs';
import './message/message-mention.mjs';
import './message/message-reaction.mjs';
import './task-module/task-module-request.mjs';
import './tab/tab-entity-context.mjs';
import '../activities/invoke/message-extension/query.mjs';
import './messaging-extension/messaging-extension-query.mjs';
import './messaging-extension/messaging-extension-parameter.mjs';
import '../activities/invoke/message-extension/query-link.mjs';
import '../activities/invoke/message-extension/query-setting-url.mjs';
import '../activities/invoke/message-extension/select-item.mjs';
import '../activities/invoke/message-extension/setting.mjs';
import '../activities/invoke/search.mjs';
import './search/search-invoke-value.mjs';
import '../activities/invoke/sign-in/index.mjs';
import '../activities/invoke/sign-in/failure.mjs';
import './sign-in/sign-in-failure.mjs';
import '../activities/invoke/sign-in/token-exchange.mjs';
import './sign-in/sign-in-exchange-token.mjs';
import '../activities/invoke/sign-in/verify-state.mjs';
import './sign-in/sign-in-state-verify-query.mjs';
import '../activities/invoke/suggested-action-submit.mjs';
import '../activities/invoke/tab/index.mjs';
import '../activities/invoke/tab/tab-fetch.mjs';
import './tab/tab-request.mjs';
import './tab/tab-context.mjs';
import '../activities/invoke/tab/tab-submit.mjs';
import '../activities/invoke/task/index.mjs';
import '../activities/invoke/task/task-fetch.mjs';
import '../activities/invoke/task/task-submit.mjs';
import '../activities/message/index.mjs';
import '../message-BhoTpQct.mjs';
import './input-hint.mjs';
import './text-format.mjs';
import './attachment/card-attachment.mjs';
import '@microsoft/teams.cards';
import './card/animation-card.mjs';
import './card/media-url.mjs';
import './card/thumbnail-url.mjs';
import './card/audio-card.mjs';
import './card/hero-card.mjs';
import './card/card-image.mjs';
import './card/thumbnail-card.mjs';
import './card/video-card.mjs';
import './oauth/oauth-card.mjs';
import './token/token-post-resource.mjs';
import './token-exchange/token-exchange-resource.mjs';
import './sign-in/sign-in-card.mjs';
import './attachment/attachment-layout.mjs';
import './delivery-mode.mjs';
import '../activities/typing.mjs';
import '../activities/message/message-update.mjs';
import '../activities/message/message-delete.mjs';
import '../activities/message/message-reaction.mjs';
import '../activities/trace.mjs';
import '../activities/utils/to-activity-params.mjs';
import '../activity--_UgQSMq.mjs';
import '@microsoft/teams.common';
import './resource.mjs';
import '../clients/api-client-settings.mjs';
import '../auth/cloud-environment.mjs';
import '../auth/credentials.mjs';
import './messaging-extension/messaging-extension-attachment.mjs';
import './messaging-extension/messaging-extension-attachment-layout.mjs';
import './messaging-extension/messaging-extension-suggested-action.mjs';
import './error.mjs';

/**
 * Represents a response returned by a bot when it receives an `invoke` activity.
 *
 * This interface supports the framework and is not intended to be called directly for your code.
 */
type InvokeResponse<T extends keyof InvokeResponseBody = any> = {
    /**
     * The HTTP status code of the response.
     */
    status: number;
    /**
     * Optional. The body of the response.
     */
    body?: InvokeResponseBody[T];
};
/**
 * @hidden
 * @internal
 *
 * Type guard to check if a value is an InvokeResponse.
 * @param value value to compare
 * @returns true if value is type of InvokeResponse
 */
declare function isInvokeResponse(value: any): value is InvokeResponse;
type InvokeResponseBody = {
    'config/fetch': ConfigResponse;
    'config/submit': ConfigResponse;
    'fileConsent/invoke': void;
    'actionableMessage/executeAction': void;
    'composeExtension/queryLink': MessagingExtensionResponse;
    'composeExtension/anonymousQueryLink': MessagingExtensionResponse;
    'composeExtension/query': MessagingExtensionResponse;
    'composeExtension/selectItem': MessagingExtensionResponse;
    'composeExtension/submitAction': MessagingExtensionActionResponse;
    'composeExtension/fetchTask': MessagingExtensionActionResponse;
    'composeExtension/querySettingUrl': MessagingExtensionResponse;
    'composeExtension/setting': MessagingExtensionResponse;
    'composeExtension/onCardButtonClicked': void;
    'task/fetch': TaskModuleResponse;
    'task/submit': TaskModuleResponse;
    'tab/fetch': TabResponse;
    'tab/submit': TabResponse;
    'message/fetchTask': TaskModuleResponse;
    'message/submitAction': void;
    'handoff/action': void;
    'suggestedActions/submit': void;
    'signin/tokenExchange': TokenExchangeInvokeResponse | void;
    'signin/verifyState': void;
    'signin/failure': void;
    'adaptiveCard/action': AdaptiveCardActionResponse;
    'application/search': SearchInvokeResponse;
    'htmlwidget/calltool': IHtmlWidgetCallToolResponse;
};

export { type InvokeResponse, isInvokeResponse };
